No OneTemporary

File Metadata

Created
Fri, Jun 7, 9:29 AM
This file is larger than 256 KB, so syntax highlighting was skipped.
diff --git a/static/reports/clang/master/index.html b/static/reports/clang/master/index.html
index 50e1ad6bc..18c0756f0 100644
--- a/static/reports/clang/master/index.html
+++ b/static/reports/clang/master/index.html
@@ -1,424 +1,421 @@
<html>
<head>
-<title>digiKam-master-rev-982072c5f9</title>
+<title>digiKam-master-rev-6f70562270</title>
<link type="text/css" rel="stylesheet" href="scanview.css"/>
<script src="sorttable.js"></script>
<script language='javascript' type="text/javascript">
function SetDisplay(RowClass, DisplayVal)
{
var Rows = document.getElementsByTagName("tr");
for ( var i = 0 ; i < Rows.length; ++i ) {
if (Rows[i].className == RowClass) {
Rows[i].style.display = DisplayVal;
}
}
}
function CopyCheckedStateToCheckButtons(SummaryCheckButton) {
var Inputs = document.getElementsByTagName("input");
for ( var i = 0 ; i < Inputs.length; ++i ) {
if (Inputs[i].type == "checkbox") {
if(Inputs[i] != SummaryCheckButton) {
Inputs[i].checked = SummaryCheckButton.checked;
Inputs[i].onclick();
}
}
}
}
function returnObjById( id ) {
if (document.getElementById)
var returnVar = document.getElementById(id);
else if (document.all)
var returnVar = document.all[id];
else if (document.layers)
var returnVar = document.layers[id];
return returnVar;
}
var NumUnchecked = 0;
function ToggleDisplay(CheckButton, ClassName) {
if (CheckButton.checked) {
SetDisplay(ClassName, "");
if (--NumUnchecked == 0) {
returnObjById("AllBugsCheck").checked = true;
}
}
else {
SetDisplay(ClassName, "none");
NumUnchecked++;
returnObjById("AllBugsCheck").checked = false;
}
}
</script>
<!-- SUMMARYENDHEAD -->
</head>
<body>
-<h1>digiKam-master-rev-982072c5f9</h1>
+<h1>digiKam-master-rev-6f70562270</h1>
<table>
<tr><th>User:</th><td>gilles@localhost</td></tr>
<tr><th>Working Directory:</th><td>/mnt/devel/GIT/6.x/build.scan</td></tr>
<tr><th>Command Line:</th><td>make -j7</td></tr>
<tr><th>Clang Version:</th><td>clang version 8.0.0 (Mageia 8.0.0-1.mga7)
</td></tr>
-<tr><th>Date:</th><td>Sat Oct 5 17:43:38 2019</td></tr>
+<tr><th>Date:</th><td>Sat Oct 12 14:23:48 2019</td></tr>
</table>
<h2>Bug Summary</h2><table>
<thead><tr><td>Bug Type</td><td>Quantity</td><td class="sorttable_nosort">Display?</td></tr></thead>
-<tr style="font-weight:bold"><td class="SUMM_DESC">All Bugs</td><td class="Q">38</td><td><center><input type="checkbox" id="AllBugsCheck" onClick="CopyCheckedStateToCheckButtons(this);" checked/></center></td></tr>
+<tr style="font-weight:bold"><td class="SUMM_DESC">All Bugs</td><td class="Q">37</td><td><center><input type="checkbox" id="AllBugsCheck" onClick="CopyCheckedStateToCheckButtons(this);" checked/></center></td></tr>
<tr><th>API</th><th colspan=2></th></tr>
<tr><td class="SUMM_DESC">Argument with 'nonnull' attribute passed null</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_api_argument_with_nonnull_attribute_passed_null');" checked/></center></td></tr>
<tr><th>Dead store</th><th colspan=2></th></tr>
<tr><td class="SUMM_DESC">Dead assignment</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_dead_store_dead_assignment');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Dead increment</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_dead_store_dead_increment');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Dead initialization</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_dead_store_dead_initialization');" checked/></center></td></tr>
<tr><th>Logic error</th><th colspan=2></th></tr>
<tr><td class="SUMM_DESC">Assigned value is garbage or undefined</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_assigned_value_is_garbage_or_undefined');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Branch condition evaluates to a garbage value</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_branch_condition_evaluates_to_a_garbage_value');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Called C++ object pointer is null</td><td class="Q">2</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_called_c++_object_pointer_is_null');" checked/></center></td></tr>
-<tr><td class="SUMM_DESC">Dereference of null pointer</td><td class="Q">5</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_dereference_of_null_pointer');" checked/></center></td></tr>
+<tr><td class="SUMM_DESC">Dereference of null pointer</td><td class="Q">4</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_dereference_of_null_pointer');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Division by zero</td><td class="Q">2</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_division_by_zero');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Result of operation is garbage or undefined</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_result_of_operation_is_garbage_or_undefined');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Returning null reference</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_returning_null_reference');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Stack address stored into global variable</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_stack_address_stored_into_global_variable');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Uninitialized argument value</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_logic_error_uninitialized_argument_value');" checked/></center></td></tr>
<tr><th>Memory error</th><th colspan=2></th></tr>
<tr><td class="SUMM_DESC">Bad deallocator</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_memory_error_bad_deallocator');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Memory leak</td><td class="Q">24</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_memory_error_memory_leak');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Use of zero allocated</td><td class="Q">1</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_memory_error_use_of_zero_allocated');" checked/></center></td></tr>
<tr><td class="SUMM_DESC">Use-after-free</td><td class="Q">3</td><td><center><input type="checkbox" onClick="ToggleDisplay(this,'bt_memory_error_use-after-free');" checked/></center></td></tr>
</table>
<h2>Reports</h2>
<table class="sortable" style="table-layout:automatic">
<thead><tr>
<td>Bug Group</td>
<td class="sorttable_sorted">Bug Type<span id="sorttable_sortfwdind">&nbsp;&#x25BE;</span></td>
<td>File</td>
<td>Function/Method</td>
<td class="Q">Line</td>
<td class="Q">Path Length</td>
<td class="sorttable_nosort"></td>
<!-- REPORTBUGCOL -->
</tr></thead>
<tbody>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_memory_error_bad_deallocator"><td class="DESC">Memory error</td><td class="DESC">Bad deallocator</td><td>usr/lib64/qt5/include/QtCore/qscopedpointer.h</td><td class="DESC">cleanup</td><td class="Q">60</td><td class="Q">5</td><td><a href="report-4ca9c9.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-4ca9c9.html" -->
+<tr class="bt_memory_error_bad_deallocator"><td class="DESC">Memory error</td><td class="DESC">Bad deallocator</td><td>usr/lib64/qt5/include/QtCore/qscopedpointer.h</td><td class="DESC">cleanup</td><td class="Q">60</td><td class="Q">5</td><td><a href="report-55268a.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-55268a.html" -->
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic error</td><td class="DESC">Called C++ object pointer is null</td><td>mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp</td><td class="DESC">addAction</td><td class="Q">109</td><td class="Q">8</td><td><a href="report-fc062c.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-fc062c.html" -->
+<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic error</td><td class="DESC">Called C++ object pointer is null</td><td>mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp</td><td class="DESC">initMysqlDatabase</td><td class="Q">563</td><td class="Q">23</td><td><a href="report-e8ed77.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-e8ed77.html" -->
</tr>
</tr>
+<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic error</td><td class="DESC">Called C++ object pointer is null</td><td>mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp</td><td class="DESC">addAction</td><td class="Q">109</td><td class="Q">8</td><td><a href="report-f5f63c.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-f5f63c.html" -->
</tr>
-<tr class="bt_logic_error_called_c++_object_pointer_is_null"><td class="DESC">Logic error</td><td class="DESC">Called C++ object pointer is null</td><td>mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp</td><td class="DESC">initMysqlDatabase</td><td class="Q">563</td><td class="Q">23</td><td><a href="report-88cc69.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-88cc69.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
+<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGBA16</td><td class="Q">2340</td><td class="Q">41</td><td><a href="report-51b0a5.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-51b0a5.html" -->
</tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGB16</td><td class="Q">1882</td><td class="Q">41</td><td><a href="report-2bc136.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-2bc136.html" -->
+<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGB</td><td class="Q">1453</td><td class="Q">41</td><td><a href="report-a85260.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-a85260.html" -->
</tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGB</td><td class="Q">1453</td><td class="Q">41</td><td><a href="report-ee1fed.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-ee1fed.html" -->
</tr>
+<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGB16</td><td class="Q">1882</td><td class="Q">41</td><td><a href="report-93a828.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-93a828.html" -->
</tr>
+<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGBA</td><td class="Q">1014</td><td class="Q">41</td><td><a href="report-fd923a.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-fd923a.html" -->
</tr>
</tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGBA16</td><td class="Q">2340</td><td class="Q">41</td><td><a href="report-c85ae6.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-c85ae6.html" -->
</tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td><td class="DESC">dimgScaleAARGBA</td><td class="Q">1014</td><td class="Q">41</td><td><a href="report-f1492e.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-f1492e.html" -->
</tr>
</tr>
</tr>
-<tr class="bt_logic_error_dereference_of_null_pointer"><td class="DESC">Logic error</td><td class="DESC">Dereference of null pointer</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp</td><td class="DESC">readHEICImageByHandle</td><td class="Q">473</td><td class="Q">47</td><td><a href="report-ecf0a2.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-ecf0a2.html" -->
</tr>
</tr>
+<tr class="bt_logic_error_division_by_zero"><td class="DESC">Logic error</td><td class="DESC">Division by zero</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</td><td class="DESC">load</td><td class="Q">526</td><td class="Q">53</td><td><a href="report-d676e3.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-d676e3.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
+<tr class="bt_logic_error_division_by_zero"><td class="DESC">Logic error</td><td class="DESC">Division by zero</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</td><td class="DESC">load</td><td class="Q">495</td><td class="Q">61</td><td><a href="report-8ca31f.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-8ca31f.html" -->
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_logic_error_division_by_zero"><td class="DESC">Logic error</td><td class="DESC">Division by zero</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</td><td class="DESC">load</td><td class="Q">494</td><td class="Q">61</td><td><a href="report-2c5d63.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-2c5d63.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_logic_error_division_by_zero"><td class="DESC">Logic error</td><td class="DESC">Division by zero</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</td><td class="DESC">load</td><td class="Q">525</td><td class="Q">52</td><td><a href="report-311679.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-311679.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-825366.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-825366.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-309374.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-309374.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-1cc52f.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-1cc52f.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp</td><td class="DESC">registerSettingsWidget</td><td class="Q">74</td><td class="Q">2</td><td><a href="report-6df191.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-6df191.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-860883.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-860883.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">uploadPhoto</td><td class="Q">213</td><td class="Q">2</td><td><a href="report-1c256f.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-1c256f.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-ed70f3.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-ed70f3.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">loadAlbums</td><td class="Q">127</td><td class="Q">2</td><td><a href="report-705f27.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-705f27.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">uploadPhoto</td><td class="Q">213</td><td class="Q">2</td><td><a href="report-72f8ad.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-72f8ad.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenSaving</td><td class="Q">208</td><td class="Q">26</td><td><a href="report-096e07.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-096e07.html" -->
</tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenLoading</td><td class="Q">185</td><td class="Q">26</td><td><a href="report-332d54.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-332d54.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">login</td><td class="Q">121</td><td class="Q">2</td><td><a href="report-2917e1.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-2917e1.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</td><td class="DESC">slotAddBlackFrame</td><td class="Q">236</td><td class="Q">4</td><td><a href="report-e78b62.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-e78b62.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenSaving</td><td class="Q">208</td><td class="Q">26</td><td><a href="report-72ecfd.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-72ecfd.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-b8f871.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-b8f871.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">createAlbum</td><td class="Q">133</td><td class="Q">2</td><td><a href="report-68a978.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-68a978.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp</td><td class="DESC">generateHTML</td><td class="Q">348</td><td class="Q">11</td><td><a href="report-331fad.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-331fad.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">closeAlbum</td><td class="Q">207</td><td class="Q">4</td><td><a href="report-15c6bc.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-15c6bc.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-634e13.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-634e13.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenSaving</td><td class="Q">208</td><td class="Q">26</td><td><a href="report-653638.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-653638.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-7b30fb.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-7b30fb.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</td><td class="DESC">readSettings</td><td class="Q">190</td><td class="Q">4</td><td><a href="report-06800f.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-06800f.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">loadAlbums</td><td class="Q">127</td><td class="Q">2</td><td><a href="report-ec55de.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-ec55de.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenLoading</td><td class="Q">185</td><td class="Q">26</td><td><a href="report-bf8eff.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-bf8eff.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-55e94f.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-55e94f.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">login</td><td class="Q">121</td><td class="Q">2</td><td><a href="report-064ad2.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-064ad2.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp</td><td class="DESC">readFolder</td><td class="Q">235</td><td class="Q">32</td><td><a href="report-280f32.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-280f32.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-24942e.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-24942e.html" -->
</tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-d38318.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-d38318.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenSaving</td><td class="Q">208</td><td class="Q">26</td><td><a href="report-b422cd.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-b422cd.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">openAlbum</td><td class="Q">194</td><td class="Q">2</td><td><a href="report-1c3f44.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-1c3f44.html" -->
</tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp</td><td class="DESC">registerSettingsWidget</td><td class="Q">74</td><td class="Q">2</td><td><a href="report-26a0ec.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-26a0ec.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenLoading</td><td class="Q">185</td><td class="Q">26</td><td><a href="report-c907b3.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-c907b3.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testDirectChildrenLoading</td><td class="Q">185</td><td class="Q">26</td><td><a href="report-07b31e.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-07b31e.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</td><td class="DESC">readSettings</td><td class="Q">190</td><td class="Q">4</td><td><a href="report-745783.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-745783.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-77df15.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-77df15.html" -->
</tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-d956d7.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-d956d7.html" -->
</tr>
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp</td><td class="DESC">generateHTML</td><td class="Q">348</td><td class="Q">11</td><td><a href="report-c97217.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-c97217.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenLoading</td><td class="Q">246</td><td class="Q">47</td><td><a href="report-4bf23f.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-4bf23f.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">createAlbum</td><td class="Q">133</td><td class="Q">2</td><td><a href="report-b5cd2c.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-b5cd2c.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>usr/lib64/qt5/include/QtTest/qtestcase.h</td><td class="DESC">qCompare</td><td class="Q">359</td><td class="Q">9</td><td><a href="report-6150ea.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-6150ea.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">closeAlbum</td><td class="Q">207</td><td class="Q">4</td><td><a href="report-cd8406.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-cd8406.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-45aa80.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-45aa80.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</td><td class="DESC">slotAddBlackFrame</td><td class="Q">236</td><td class="Q">4</td><td><a href="report-de112b.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-de112b.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>usr/lib64/qt5/include/QtTest/qtestcase.h</td><td class="DESC">qCompare</td><td class="Q">359</td><td class="Q">9</td><td><a href="report-9c1052.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-9c1052.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td><td class="DESC">openAlbum</td><td class="Q">194</td><td class="Q">2</td><td><a href="report-d39b85.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-d39b85.html" -->
+<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp</td><td class="DESC">readFolder</td><td class="Q">235</td><td class="Q">32</td><td><a href="report-9d6099.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-9d6099.html" -->
</tr>
-<tr class="bt_memory_error_memory_leak"><td class="DESC">Memory error</td><td class="DESC">Memory leak</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td><td class="DESC">testRecursiveChildrenSaving</td><td class="Q">284</td><td class="Q">47</td><td><a href="report-d65b25.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-d65b25.html" -->
</tr>
</tr>
</tr>
+<tr class="bt_logic_error_result_of_operation_is_garbage_or_undefined"><td class="DESC">Logic error</td><td class="DESC">Result of operation is garbage or undefined</td><td>mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp</td><td class="DESC">findDuplicates</td><td class="Q">1181</td><td class="Q">24</td><td><a href="report-94f444.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-94f444.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_logic_error_result_of_operation_is_garbage_or_undefined"><td class="DESC">Logic error</td><td class="DESC">Result of operation is garbage or undefined</td><td>mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp</td><td class="DESC">findDuplicates</td><td class="Q">1181</td><td class="Q">24</td><td><a href="report-539026.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-539026.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_memory_error_use-after-free"><td class="DESC">Memory error</td><td class="DESC">Use-after-free</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp</td><td class="DESC">operator=</td><td class="Q">58</td><td class="Q">3</td><td><a href="report-cfa9bf.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-cfa9bf.html" -->
</tr>
</tr>
-<tr class="bt_memory_error_use-after-free"><td class="DESC">Memory error</td><td class="DESC">Use-after-free</td><td>usr/lib64/qt5/include/QtCore/qshareddata.h</td><td class="DESC">constData</td><td class="Q">83</td><td class="Q">29</td><td><a href="report-e7a95e.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-e7a95e.html" -->
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
-<tr class="bt_memory_error_use-after-free"><td class="DESC">Memory error</td><td class="DESC">Use-after-free</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h</td><td class="DESC">operator Digikam::DImg::Private *</td><td class="Q">120</td><td class="Q">6</td><td><a href="report-a01c86.html#EndPath">View Report</a></td>
-<!-- REPORTBUG id="report-a01c86.html" -->
-</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
</tr>
+<tr class="bt_memory_error_use-after-free"><td class="DESC">Memory error</td><td class="DESC">Use-after-free</td><td>usr/lib64/qt5/include/QtCore/qshareddata.h</td><td class="DESC">constData</td><td class="Q">83</td><td class="Q">29</td><td><a href="report-889a28.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-889a28.html" -->
</tr>
</tr>
+<tr class="bt_memory_error_use-after-free"><td class="DESC">Memory error</td><td class="DESC">Use-after-free</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp</td><td class="DESC">operator=</td><td class="Q">58</td><td class="Q">3</td><td><a href="report-efaba4.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-efaba4.html" -->
</tr>
</tr>
+<tr class="bt_memory_error_use-after-free"><td class="DESC">Memory error</td><td class="DESC">Use-after-free</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h</td><td class="DESC">operator Digikam::DImg::Private *</td><td class="Q">120</td><td class="Q">6</td><td><a href="report-0129e0.html#EndPath">View Report</a></td>
+<!-- REPORTBUG id="report-0129e0.html" -->
</tr>
</tbody>
</table>
</body></html>
diff --git a/static/reports/clang/master/report-a01c86.html b/static/reports/clang/master/report-0129e0.html
similarity index 99%
rename from static/reports/clang/master/report-a01c86.html
rename to static/reports/clang/master/report-0129e0.html
index 74da8ba38..66f22896b 100644
--- a/static/reports/clang/master/report-a01c86.html
+++ b/static/reports/clang/master/report-0129e0.html
@@ -1,820 +1,820 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Use of memory after it is freed -->
<!-- BUGTYPE Use-after-free -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h -->
<!-- FILENAME dshareddata.h -->
<!-- FUNCTIONNAME operator Digikam::DImg::Private * -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 6f4b4ec67a5809e08311d346b7aef628 -->
<!-- BUGLINE 120 -->
<!-- BUGCOLUMN 9 -->
<!-- BUGPATHLENGTH 6 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 120, column 9</a><br />Use of memory after it is freed</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_data.cpp -faddrsig
+<div class="spoiler">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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_data.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"50": 1, "51": 1, "53": 1, "58": 1, "60": 1, "61": 1}, "3": {"118": 1, "119": 1, "120": 1, "121": 1, "122": 1, "123": 1, "124": 1, "125": 1, "126": 1, "129": 1, "130": 1, "131": 1, "132": 1}, "31639": {"60": 1, "160": 1, "161": 1, "162": 1}, "31641": {"106": 1, "108": 1, "114": 1, "115": 1, "221": 1}, "31644": {"236": 1, "237": 1, "238": 1, "239": 1, "263": 1, "264": 1, "265": 1, "269": 1, "270": 1, "271": 1}, "31802": {"672": 1}, "31804": {"79": 1, "80": 1, "81": 1, "82": 1, "256": 1, "294": 1, "295": 1, "296": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "48858": {"49": 1, "50": 1, "51": 1, "68": 1, "69": 1, "70": 1, "108": 1, "109": 1, "110": 1, "118": 1, "119": 1, "120": 1, "186": 1, "187": 1, "188": 1, "189": 1, "191": 1, "201": 1, "202": 1, "203": 1, "204": 1, "242": 1, "243": 1, "244": 1, "247": 1, "249": 1, "253": 1, "255": 1, "259": 1, "261": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<div id=File1>
<h4 class=FileName>/mnt/devel/GIT/6.x/core/libs/dimg/dimg_data.cpp</h4>
<div class=FileNav><a href="#File48858">&#x2192;</a></div></div>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-14</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : digiKam 8/16 bits image management API.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* Data management.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2013 by Marcel Wiesweg &lt;marcel dot wiesweg at gmx dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='directive'>#include "dimg_p.h"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line">DImg&amp; DImg::<span class='keyword'>operator</span>=(<span class='keyword'>const</span> DImg&amp; image)</td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"> <span class='comment'>//qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "Original image: " &lt;&lt; m_priv-&gt;imageHistory.entries().count() &lt;&lt; " | " &lt;&lt; &amp;m_priv;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> <span class='comment'>//qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "New image: " &lt;&lt; image.m_priv-&gt;imageHistory.entries().count() &lt;&lt; " | " &lt;&lt; &amp;(image.m_priv);</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> m_priv = image.m_priv;</td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"> <span class='comment'>//qCDebug(DIGIKAM_DIMG_LOG) &lt;&lt; "Original new image: " &lt;&lt; m_priv-&gt;imageHistory.entries().count() &lt;&lt; " | " &lt;&lt; &amp;m_priv;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>bool</span> DImg::<span class='keyword'>operator</span>==(<span class='keyword'>const</span> DImg&amp; image) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> <span class='keyword'>return</span> m_priv == image.m_priv;</td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='keyword'>void</span> DImg::reset()</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> m_priv = <span class='keyword'>new</span> Private;</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='keyword'>void</span> DImg::detach()</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> <span class='comment'>// are we being shared?</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> <span class='keyword'>if</span> (!m_priv-&gt;hasMoreReferences())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">1</div></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> DSharedDataPointer&lt;Private&gt; old = m_priv;</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class="mrange"><span class="mrange">m_priv = <span class='keyword'>new</span> Private</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Calling 'DSharedDataPointer::operator='</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Returning; memory was released</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> copyImageData(<span class="mrange">old</span>);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:19ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Calling 'DSharedDataPointer::operator Digikam::DImg::Private *'</td><td><div class="PathNav"><a href="#EndPath" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> copyMetaData(old);</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='keyword'>if</span> (old-&gt;data)</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> size_t size = allocateData();</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> memcpy(m_priv-&gt;data, old-&gt;data, size);</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"><span class='keyword'>void</span> DImg::putImageData(uint width, uint height, <span class='keyword'>bool</span> sixteenBit, <span class='keyword'>bool</span> alpha, uchar* <span class='keyword'>const</span> data, <span class='keyword'>bool</span> copyData)</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> <span class='comment'>// set image data, metadata is untouched</span></td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>bool</span> null = (width == 0) || (height == 0);</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> <span class='comment'>// allocateData, or code below will set null to false</span></td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> setImageData(<span class='keyword'>true</span>, width, height, sixteenBit, alpha);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='comment'>// replace data</span></td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>delete</span> [] m_priv-&gt;data;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='keyword'>if</span> (null)</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='comment'>// image is null - no data</span></td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> m_priv-&gt;data = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (copyData)</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> size_t size = allocateData();</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='keyword'>if</span> (data)</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> memcpy(m_priv-&gt;data, data, size);</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>if</span> (data)</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> m_priv-&gt;data = data;</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> m_priv-&gt;null = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> allocateData();</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='keyword'>void</span> DImg::putImageData(uchar* <span class='keyword'>const</span> data, <span class='keyword'>bool</span> copyData)</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='keyword'>if</span> (!data)</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='keyword'>delete</span> [] m_priv-&gt;data;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> m_priv-&gt;data = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> m_priv-&gt;null = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (copyData)</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> memcpy(m_priv-&gt;data, data, numBytes());</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> m_priv-&gt;data = data;</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='keyword'>void</span> DImg::resetMetaData()</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> m_priv-&gt;attributes.clear();</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> m_priv-&gt;embeddedText.clear();</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> m_priv-&gt;metaData = MetaEngineData();</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line">uchar* DImg::stripImageData()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> uchar* <span class='keyword'>const</span> data = m_priv-&gt;data;</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> m_priv-&gt;data = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> m_priv-&gt;null = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>return</span> data;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"><span class='keyword'>void</span> DImg::copyMetaData(<span class='keyword'>const</span> Private* <span class='keyword'>const</span> src)</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> m_priv-&gt;metaData = src-&gt;metaData;</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> m_priv-&gt;attributes = src-&gt;attributes;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> m_priv-&gt;embeddedText = src-&gt;embeddedText;</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> m_priv-&gt;iccProfile = src-&gt;iccProfile;</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> m_priv-&gt;imageHistory = src-&gt;imageHistory;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='comment'>//FIXME: what about sharing and deleting lanczos_func?</span></td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"><span class='keyword'>void</span> DImg::copyImageData(<span class='keyword'>const</span> Private* <span class='keyword'>const</span> src)</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> setImageData(src-&gt;null, src-&gt;width, src-&gt;height, src-&gt;sixteenBit, src-&gt;alpha);</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line">size_t DImg::allocateData()</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> size_t size = m_priv-&gt;width * m_priv-&gt;height * (m_priv-&gt;sixteenBit ? 8 : 4);</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> m_priv-&gt;data = DImgLoader::new_failureTolerant(size);</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='keyword'>if</span> (!m_priv-&gt;data)</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> m_priv-&gt;null = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> m_priv-&gt;width = 0;</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> m_priv-&gt;height = 0;</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='keyword'>return</span> 0;</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> m_priv-&gt;null = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>return</span> size;</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"><span class='keyword'>void</span> DImg::setImageDimension(uint width, uint height)</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> m_priv-&gt;width = width;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> m_priv-&gt;height = height;</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"><span class='keyword'>void</span> DImg::setImageData(<span class='keyword'>bool</span> null, uint width, uint height, <span class='keyword'>bool</span> sixteenBit, <span class='keyword'>bool</span> alpha)</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> m_priv-&gt;null = null;</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> m_priv-&gt;width = width;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> m_priv-&gt;height = height;</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> m_priv-&gt;alpha = alpha;</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> m_priv-&gt;sixteenBit = sixteenBit;</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table><hr class=divider>
<div id=File48858>
<div class=FileNav><a href="#File1">&#x2190;</a></div><h4 class=FileName>/mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h</h4>
</div>
<table class="code" data-fileid="48858">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2007-06-21</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Shared data with reference counting and explicit sharing</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 1992-2006 Trolltech ASA.</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2007-2011 by Marcel Wiesweg &lt;marcel dot wiesweg at gmx dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='directive'>#ifndef DIGIKAM_DSHARED_DATA_H</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='directive'>#define DIGIKAM_DSHARED_DATA_H</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QtGlobal&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include "digikam_export.h"</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='keyword'>class</span> <span class='macro'>DIGIKAM_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> DSharedData</td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> <span class='comment'>* Classes that are used with a DSharedDataPointer shall inherit from</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> <span class='comment'>* this class.</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> QAtomicInt ref;</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> <span class='keyword'>inline</span> DSharedData()</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> : ref(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>inline</span> DSharedData(<span class='keyword'>const</span> DSharedData&amp;)</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> : ref(0)</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='comment'>* Returns true if the reference count is not 0.</span></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> <span class='comment'>* For the normal use case, you do not need this method.</span></td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> isReferenced() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> <span class='keyword'>return</span> (<span class='keyword'>int</span>)ref &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> hasMoreReferences() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> <span class='keyword'>return</span> (<span class='keyword'>int</span>)ref != 1;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> <span class='comment'>// using the assignment operator would lead to corruption in the ref-counting</span></td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> DSharedData&amp; <span class='keyword'>operator</span>=(<span class='keyword'>const</span> DSharedData&amp;);</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"><span class='comment'>// --------------------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>class</span> DSharedDataPointer</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> <span class='comment'>* Use this class to store pointers to a shared data object, which</span></td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='comment'>* inherits DSharedData.</span></td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='comment'>* This class is inspired by QSharedDataPointer, but differs in two points:</span></td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='comment'>* - it provides "explicit sharing": A change to the data affects all classes</span></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='comment'>* keeping a pointer to the shared data. No automatic copying is done.</span></td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='comment'>* - no method "detach()" is provided, acknowledging the fact that the</span></td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='comment'>* copy constructor of class T may not be used.</span></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='comment'>* Various operators for accessing the pointer const and non-const</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>inline</span> T&amp; <span class='keyword'>operator</span>*()</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>return</span> *d;</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T&amp; <span class='keyword'>operator</span>*() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>return</span> *d;</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>inline</span> T* <span class='keyword'>operator</span>-&gt;()</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T* <span class='keyword'>operator</span>-&gt;() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>operator</span> T* ()</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">d</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Use of memory after it is freed</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>operator</span> <span class='keyword'>const</span> T* () <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> <span class='keyword'>inline</span> T* data()</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T* data() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T* constData() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='comment'>* This method carries out a const_cast, so it returns a non-const pointer</span></td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> <span class='comment'>* from a const DSharedDataPointer.</span></td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='comment'>* Typically, this should only be used if you know it should be used</span></td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='comment'>* (to implement a lazy loading caching technique or similar)</span></td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> <span class='keyword'>inline</span> T* constCastData() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>const_cast</span>&lt;T*&gt;(d);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> DSharedDataPointer&lt;T&gt;&amp; other) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='keyword'>return</span> d == other.d;</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(<span class='keyword'>const</span> DSharedDataPointer&lt;T&gt;&amp; other) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='keyword'>return</span> d != other.d;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>inline</span> DSharedDataPointer()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> d = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='keyword'>explicit</span> <span class='keyword'>inline</span> DSharedDataPointer(T* <span class='keyword'>const</span> data)</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> : d(data)</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>if</span> (d)</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>inline</span> ~DSharedDataPointer()</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='keyword'>if</span> (d &amp;&amp; !d-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>inline</span> DSharedDataPointer(<span class='keyword'>const</span> DSharedDataPointer&lt;T&gt;&amp; o)</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> : d(o.d)</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> <span class='keyword'>if</span> (d)</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> d-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> <span class='keyword'>inline</span> DSharedDataPointer&lt;T&gt;&amp; <span class='keyword'>operator</span>=(<span class='keyword'>const</span> DSharedDataPointer&lt;T&gt;&amp; o)</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='keyword'>delete</span> assign(o);</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> <span class='keyword'>inline</span> DSharedDataPointer&amp; <span class='keyword'>operator</span>=(T* <span class='keyword'>const</span> o)</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class="mrange"><span class='keyword'>delete</span> assign(o)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Memory is released</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='comment'>* The assign operator is like operator=,</span></td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> <span class='comment'>* with the difference that the old pointer is not deleted</span></td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='comment'>* if its reference count is 0, but returned.</span></td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='comment'>* Use this if you need to do your own deleting, if e.g.</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='comment'>* the object need to be removed from a list or a cache.</span></td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> <span class='comment'>* @returns A T object with reference count 0, which may be deleted;</span></td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='comment'>* or 0 if no object need to be dropped.</span></td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>inline</span> T* assign(<span class='keyword'>const</span> DSharedDataPointer&lt;T&gt;&amp; o)</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>if</span> (o.d != d)</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='comment'>// reference new value</span></td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> <span class='keyword'>if</span> (o.d)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> o.d-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='comment'>// store old value</span></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> T* x = d;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='comment'>// assign new value</span></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> d = o.d;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='comment'>// dereference old value,</span></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='comment'>// return value and ownership if dereferenced</span></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> <span class='keyword'>if</span> (x &amp;&amp; !x-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='keyword'>return</span> x;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='keyword'>inline</span> T* assign(T* <span class='keyword'>const</span> o)</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> <span class='keyword'>if</span> (o != d)</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> <span class='comment'>// reference new value</span></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> <span class='keyword'>if</span> (o)</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> o-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> <span class='comment'>// store old value</span></td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> T* x = d;</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> <span class='comment'>// assign new value</span></td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> d = o;</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> <span class='comment'>// dereference old value,</span></td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='comment'>// return value and ownership if dereferenced</span></td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>if</span> (x &amp;&amp; !x-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> x;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='comment'>* Semantics like assign, but no new pointer is assigned to this.</span></td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>inline</span> T* unassign()</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='keyword'>return</span> assign(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>return</span> !d;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> T* d;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"><span class='directive'>#endif // DIGIKAM_DSHARED_DATA_H</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-2917e1.html b/static/reports/clang/master/report-064ad2.html
similarity index 99%
rename from static/reports/clang/master/report-2917e1.html
rename to static/reports/clang/master/report-064ad2.html
index bcedfd4b0..26c5bd9cf 100644
--- a/static/reports/clang/master/report-2917e1.html
+++ b/static/reports/clang/master/report-064ad2.html
@@ -1,598 +1,598 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'command' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -->
<!-- FILENAME rajcetalker.cpp -->
<!-- FUNCTIONNAME login -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 4134f69693bee2158cd434a1962a3f01 -->
<!-- BUGLINE 121 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 2 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 121, column 1</a><br />Potential leak of memory pointed to by 'command'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"117": 1, "118": 1, "119": 1, "120": 1, "121": 1, "235": 1, "236": 1, "237": 1, "239": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2011-04-12</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A tool to export items to Rajce web service</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2011 by Lukas Krejci &lt;krejci.l at centrum dot cz&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2011-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "rajcetalker.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QQueue&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QNetworkReply&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QNetworkAccessManager&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QCryptographicHash&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QXmlResultItems&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QXmlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "rajcempform.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "rajcecommand.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "digikam_version.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dmetadata.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "wstoolutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "previewloadthread.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericRajcePlugin</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='keyword'>const</span> QUrl RAJCE_URL(QLatin1String(<span class='string_literal'>"http://www.rajce.idnes.cz/liveAPI/index.php"</span>));</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> RajceTalker::Private</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> : queueAccess(QMutex::Recursive),</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> netMngr(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> reply(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QQueue&lt;RajceCommand*&gt; commandQueue;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMutex queueAccess;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString tmpDir;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QNetworkAccessManager* netMngr;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QNetworkReply* reply;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> RajceSession session;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">RajceTalker::RajceTalker(QWidget* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d-&gt;tmpDir = WSToolUtils::makeTemporaryDir(<span class='string_literal'>"rajce"</span>).absolutePath() + QLatin1Char('/');</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;netMngr = <span class='keyword'>new</span> QNetworkAccessManager(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> connect(d-&gt;netMngr, <span class='macro'>SIGNAL(finished(QNetworkReply*))<span class='expansion'>qFlagLocation("2""finished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "84")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotFinished(QNetworkReply*))<span class='expansion'>qFlagLocation("1""slotFinished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "85")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">RajceTalker::~RajceTalker()</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> WSToolUtils::removeTemporaryDir(<span class='string_literal'>"rajce"</span>);</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>const</span> RajceSession&amp; RajceTalker::session() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>void</span> RajceTalker::startCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 102, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Sending command:\n"</span> &lt;&lt; command-&gt;getXml();</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> QByteArray data = command-&gt;encode();</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> QNetworkRequest netRequest(RAJCE_URL);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> netRequest.setHeader(QNetworkRequest::ContentTypeHeader, command-&gt;contentType());</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;reply = d-&gt;netMngr-&gt;post(netRequest, data);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> connect(d-&gt;reply, <span class='macro'>SIGNAL(uploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("2""uploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "111")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>SLOT(slotUploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("1""slotUploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "112")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> emit signalBusyStarted(command-&gt;commandType());</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"><span class='keyword'>void</span> RajceTalker::login(<span class='keyword'>const</span> QString&amp; username, <span class='keyword'>const</span> QString&amp; password)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> LoginCommand* <span class='keyword'>const</span> command = <span class="mrange"><span class='keyword'>new</span> LoginCommand(username, password)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:35ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'command'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> RajceTalker::loadAlbums()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> AlbumListCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AlbumListCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"><span class='keyword'>void</span> RajceTalker::createAlbum(<span class='keyword'>const</span> QString&amp; name, <span class='keyword'>const</span> QString&amp; description, <span class='keyword'>bool</span> visible)</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> CreateAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CreateAlbumCommand(name, description, visible, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotFinished(QNetworkReply* reply)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (reply != d-&gt;reply)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> QString response = QString::fromUtf8(reply-&gt;readAll());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 144, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; response;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> RajceCommand* <span class='keyword'>const</span> c = d-&gt;commandQueue.head();</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> c-&gt;processResponse(response, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> RajceCommandType type = c-&gt;commandType();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>delete</span> c;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 157, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"State after command: "</span> &lt;&lt; d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>// Let the users react on the command before we</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>// let the next queued command in.</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>// This enables the connected slots to read in</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>// reliable values from the state and/or</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>// clear the error state once it's handled.</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> emit signalBusyFinished(type);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> reply-&gt;deleteLater();</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>// Only dequeue the command after the above signal has been</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='comment'>// emitted so that the users can queue other commands</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='comment'>// without them being started straight away in the enqueue</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='comment'>// method which would happen if the command was dequed</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='comment'>// before the signal and the signal was emitted in the same</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='comment'>// thread (which is the case (always?)).</span></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;commandQueue.dequeue();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='comment'>// see if there's something to continue with</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> startCommand(d-&gt;commandQueue.head());</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>void</span> RajceTalker::logout()</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>//TODO</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>void</span> RajceTalker::openAlbum(<span class='keyword'>const</span> RajceAlbum&amp; album)</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> OpenAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> OpenAlbumCommand(album.id, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> RajceTalker::closeAlbum()</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;session.openAlbumToken().isEmpty())</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> CloseAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CloseAlbumCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> emit signalBusyFinished(CloseAlbum);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"><span class='keyword'>void</span> RajceTalker::uploadPhoto(<span class='keyword'>const</span> QString&amp; path, <span class='keyword'>unsigned</span> dimension, <span class='keyword'>int</span> jpgQuality)</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> AddPhotoCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AddPhotoCommand(d-&gt;tmpDir, path, dimension, jpgQuality, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> RajceTalker::clearLastError()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> d-&gt;session.lastErrorCode() = 0;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> d-&gt;session.lastErrorMessage() = QLatin1String(<span class='string_literal'>""</span>);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotUploadProgress(qint64 bytesSent, qint64 bytesTotal)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (bytesTotal &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>unsigned</span> percent = (<span class='keyword'>unsigned</span>)((<span class='keyword'>float</span>)bytesSent / bytesTotal * 100);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 230, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Percent signalled: "</span> &lt;&lt; percent;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> emit signalBusyProgress(d-&gt;commandQueue.head()-&gt;commandType(), percent);</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"><span class='keyword'>void</span> RajceTalker::enqueueCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> (d-&gt;session.lastErrorCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> d-&gt;commandQueue.enqueue(command);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> startCommand(command);</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"><span class='keyword'>void</span> RajceTalker::cancelCurrentCommand()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='keyword'>if</span> (d-&gt;reply != <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> slotFinished(d-&gt;reply);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> d-&gt;reply-&gt;abort();</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"><span class='keyword'>void</span> RajceTalker::init(<span class='keyword'>const</span> RajceSession&amp; initialState)</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;session = initialState;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">} <span class='comment'>// namespace DigikamGenericRajcePlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-745783.html b/static/reports/clang/master/report-06800f.html
similarity index 99%
rename from static/reports/clang/master/report-745783.html
rename to static/reports/clang/master/report-06800f.html
index 7975118da..0d8e7b395 100644
--- a/static/reports/clang/master/report-745783.html
+++ b/static/reports/clang/master/report-06800f.html
@@ -1,630 +1,630 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'item' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp -->
<!-- FILENAME hotpixelstool.cpp -->
<!-- FUNCTIONNAME readSettings -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 60ff7e802feb73e60e22a302cc3b197f -->
<!-- BUGLINE 190 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 4 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 190, column 1</a><br />Potential leak of memory pointed to by 'item'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name hotpixelstool.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -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/KService -D Editor_HotpixelsTool_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels/Editor_HotpixelsTool_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name hotpixelstool.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -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/KService -D Editor_HotpixelsTool_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels/Editor_HotpixelsTool_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"172": 1, "173": 1, "174": 1, "175": 1, "176": 1, "177": 1, "179": 1, "181": 1, "182": 1, "184": 1, "185": 1, "187": 1, "188": 1, "190": 1}, "7": {"911": 1, "912": 1, "913": 1, "915": 1}, "326": {"98": 1, "99": 1, "100": 1, "177": 1, "178": 1, "179": 1, "180": 1, "181": 1, "182": 1, "183": 1, "184": 1, "185": 1, "186": 1, "187": 1, "188": 1, "189": 1, "193": 1, "194": 1, "195": 1}, "4649": {"115": 1}, "4652": {"269": 1, "270": 1, "271": 1}, "4812": {"302": 1, "303": 1, "304": 1}, "14029": {"1795": 1, "1796": 1, "1798": 1, "2276": 1}, "17261": {"113": 1, "114": 1, "115": 1, "518": 1, "519": 1, "520": 1, "719": 1, "720": 1, "721": 1, "722": 1, "724": 1, "725": 1, "727": 1, "858": 1, "859": 1, "860": 1}, "18349": {"188": 1, "189": 1}, "19614": {"158": 1, "182": 1}, "49318": {"246": 1, "247": 1, "248": 1, "725": 1, "726": 1, "727": 1, "728": 1}, "49353": {"80": 1, "81": 1, "82": 1, "83": 1}, "53575": {"1338": 1, "1339": 1, "1340": 1}, "53800": {"74": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-03-27</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a digiKam image tool for fixing dots produced by</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* hot/stuck/dead pixels from a CCD.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2006 by Unai Garro &lt;ugarro at users dot sourceforge dot net&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='directive'>#include "hotpixelstool.h"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QGridLayout&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QLabel&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QPolygon&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QProgressBar&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QPushButton&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QIcon&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QApplication&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include &lt;klocalizedstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "blackframelistview.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "dcombobox.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "daboutdata.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dimgfiltermanager.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "editortooliface.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='directive'>#include "editortoolsettings.h"</span></td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='directive'>#include "hotpixelfixer.h"</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='directive'>#include "imagedialog.h"</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='directive'>#include "imageiface.h"</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='directive'>#include "imageregionwidget.h"</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='keyword'>namespace</span> DigikamEditorHotPixelsToolPlugin</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> HotPixelsTool::Private</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> : blackFrameButton(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> progressBar(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> filterMethodCombo(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> blackFrameListView(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> previewWidget(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> gboxSettings(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> QString configGroupName;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> QString configLastBlackFrameFileEntry;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> QString configFilterMethodEntry;</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> QPushButton* blackFrameButton;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> QProgressBar* progressBar;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> QList&lt;HotPixel&gt; hotPixelsList;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> QUrl blackFrameURL;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> DComboBox* filterMethodCombo;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> BlackFrameListView* blackFrameListView;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> ImageRegionWidget* previewWidget;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> EditorToolSettings* gboxSettings;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"><span class='keyword'>const</span> QString HotPixelsTool::Private::configGroupName(QLatin1String(<span class='string_literal'>"hotpixels Tool"</span>));</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"><span class='keyword'>const</span> QString HotPixelsTool::Private::configLastBlackFrameFileEntry(QLatin1String(<span class='string_literal'>"Last Black Frame File"</span>));</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"><span class='keyword'>const</span> QString HotPixelsTool::Private::configFilterMethodEntry(QLatin1String(<span class='string_literal'>"Filter Method"</span>));</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='comment'>// --------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">HotPixelsTool::HotPixelsTool(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> : EditorToolThreaded(parent),</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> setObjectName(QLatin1String(<span class='string_literal'>"hotpixels"</span>));</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> setToolName(<span class='macro'>i18n(<span class='string_literal'>"Hot Pixels"</span>)<span class='expansion'>i18nd("digikam", "Hot Pixels")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> setToolIcon(QIcon::fromTheme(QLatin1String(<span class='string_literal'>"hotpixels"</span>)));</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> d-&gt;gboxSettings = <span class='keyword'>new</span> EditorToolSettings(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> d-&gt;gboxSettings-&gt;setButtons(EditorToolSettings::Default|</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> EditorToolSettings::Ok|</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> EditorToolSettings::Cancel|</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> EditorToolSettings::Try);</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> QGridLayout* <span class='keyword'>const</span> grid = <span class='keyword'>new</span> QGridLayout(d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> QLabel* <span class='keyword'>const</span> filterMethodLabel = <span class='keyword'>new</span> QLabel(<span class='macro'>i18n(<span class='string_literal'>"Filter:"</span>)<span class='expansion'>i18nd("digikam", "Filter:")</span></span>, d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> d-&gt;filterMethodCombo = <span class='keyword'>new</span> DComboBox(d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"average filter mode"</span>, <span class='string_literal'>"Average"</span>)<span class='expansion'>i18ndc("digikam", "average filter mode", "Average")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"linear filter mode"</span>, <span class='string_literal'>"Linear"</span>)<span class='expansion'>i18ndc("digikam", "linear filter mode", "Linear")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"quadratic filter mode"</span>, <span class='string_literal'>"Quadratic"</span>)<span class='expansion'>i18ndc("digikam", "quadratic filter mode", "Quadratic")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"cubic filter mode"</span>, <span class='string_literal'>"Cubic"</span>)<span class='expansion'>i18ndc("digikam", "cubic filter mode", "Cubic")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> d-&gt;filterMethodCombo-&gt;setDefaultIndex(HotPixelFixer::QUADRATIC_INTERPOLATION);</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> d-&gt;blackFrameButton = <span class='keyword'>new</span> QPushButton(<span class='macro'>i18n(<span class='string_literal'>"Black Frame..."</span>)<span class='expansion'>i18nd("digikam", "Black Frame...")</span></span>, d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> d-&gt;blackFrameButton-&gt;setIcon(QIcon::fromTheme(QLatin1String(<span class='string_literal'>"document-open"</span>)));</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> d-&gt;blackFrameButton-&gt;setWhatsThis(<span class='macro'>i18n(<span class='string_literal'>"Use this button to add a new black frame file which will "<span class='expansion'>i18nd("digikam", "Use this button to add a new black frame file which will "<br> "be used by the hot pixels removal filter.")</span></span></span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='string_literal'><span class='macro'>"be used by the hot pixels removal filter."</span>)<span class='expansion'>i18nd("digikam", "Use this button to add a new black frame file which will "<br> "be used by the hot pixels removal filter.")</span></span> );</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> d-&gt;blackFrameListView = <span class='keyword'>new</span> BlackFrameListView(d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> spacing = d-&gt;gboxSettings-&gt;spacingHint();</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> grid-&gt;addWidget(filterMethodLabel, 0, 0, 1, 1);</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> grid-&gt;addWidget(d-&gt;filterMethodCombo, 0, 1, 1, 1);</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> grid-&gt;addWidget(d-&gt;blackFrameButton, 0, 2, 1, 1);</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> grid-&gt;addWidget(d-&gt;blackFrameListView, 1, 0, 2, 3);</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> grid-&gt;setRowStretch(3, 10);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> grid-&gt;setContentsMargins(spacing, spacing, spacing, spacing);</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> grid-&gt;setSpacing(spacing);</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> d-&gt;previewWidget = <span class='keyword'>new</span> ImageRegionWidget;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> setToolSettings(d-&gt;gboxSettings);</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> setToolView(d-&gt;previewWidget);</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> setPreviewModeMask(PreviewToolBar::AllPreviewModes);</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> connect(d-&gt;filterMethodCombo, <span class='macro'>SIGNAL(activated(<span class='keyword'>int</span>))<span class='expansion'>qFlagLocation("2""activated(int)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "152")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotPreview())<span class='expansion'>qFlagLocation("1""slotPreview()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "153")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> connect(d-&gt;blackFrameButton, <span class='macro'>SIGNAL(clicked())<span class='expansion'>qFlagLocation("2""clicked()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "155")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotAddBlackFrame())<span class='expansion'>qFlagLocation("1""slotAddBlackFrame()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "156")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> connect(d-&gt;blackFrameListView, <span class='macro'>SIGNAL(signalBlackFrameSelected(QList&lt;HotPixel&gt;,QUrl))<span class='expansion'>qFlagLocation("2""signalBlackFrameSelected(QList&lt;HotPixel&gt;,QUrl)"<br> "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "158")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotBlackFrame(QList&lt;HotPixel&gt;,QUrl))<span class='expansion'>qFlagLocation("1""slotBlackFrame(QList&lt;HotPixel&gt;,QUrl)"<br> "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "159")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">HotPixelsTool::~HotPixelsTool()</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::registerFilter()</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> DImgFilterManager::instance()-&gt;addGenerator(<span class='keyword'>new</span> BasicDImgFilterGenerator&lt;HotPixelFixer&gt;());</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::readSettings()</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> KSharedConfig::Ptr config = KSharedConfig::openConfig();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> KConfigGroup group = config-&gt;group(d-&gt;configGroupName);</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> d-&gt;blackFrameURL = QUrl::fromLocalFile(group.readEntry(d-&gt;configLastBlackFrameFileEntry, QString()));</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> d-&gt;filterMethodCombo-&gt;setCurrentIndex(group.readEntry(d-&gt;configFilterMethodEntry, d-&gt;filterMethodCombo-&gt;defaultIndex()));</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">d-&gt;blackFrameURL.isValid()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> EditorToolIface::editorToolIface()-&gt;setToolStartProgress(<span class='macro'>i18n(<span class='string_literal'>"Loading: "</span>)<span class='expansion'>i18nd("digikam", "Loading: ")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> BlackFrameListViewItem* item = <span class="mrange"><span class='keyword'>new</span> BlackFrameListViewItem(d-&gt;blackFrameListView, d-&gt;blackFrameURL)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:40ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("2""signalLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "184")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("1""slotLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "185")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingComplete())<span class='expansion'>qFlagLocation("2""signalLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "187")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingComplete())<span class='expansion'>qFlagLocation("1""slotLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "188")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'item'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::writeSettings()</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> KSharedConfig::Ptr config = KSharedConfig::openConfig();</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> KConfigGroup group = config-&gt;group(d-&gt;configGroupName);</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> group.writeEntry(d-&gt;configLastBlackFrameFileEntry, d-&gt;blackFrameURL.url());</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> group.writeEntry(d-&gt;configFilterMethodEntry, d-&gt;filterMethodCombo-&gt;currentIndex());</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> group.sync();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotLoadingProgress(<span class='keyword'>float</span> v)</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> EditorToolIface::editorToolIface()-&gt;setToolProgress((<span class='keyword'>int</span>)(v*100));</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotLoadingComplete()</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> EditorToolIface::editorToolIface()-&gt;setToolStopProgress();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotResetSettings()</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> d-&gt;filterMethodCombo-&gt;blockSignals(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> d-&gt;filterMethodCombo-&gt;slotReset();</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> d-&gt;filterMethodCombo-&gt;blockSignals(<span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotAddBlackFrame()</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> QUrl url = ImageDialog::getImageURL(<span class='macro'>qApp<span class='expansion'>(static_cast&lt;QApplication *&gt;(QCoreApplication::instance<br>()))</span></span>-&gt;activeWindow(), d-&gt;blackFrameURL, <span class='macro'>i18n(<span class='string_literal'>"Select Black Frame Image"</span>)<span class='expansion'>i18nd("digikam", "Select Black Frame Image")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>if</span> (!url.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> <span class='comment'>// Load the selected file and insert into the list.</span></td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> d-&gt;blackFrameURL = url;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> d-&gt;blackFrameListView-&gt;clear();</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> BlackFrameListViewItem* item = <span class='keyword'>new</span> BlackFrameListViewItem(d-&gt;blackFrameListView, d-&gt;blackFrameURL);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("2""signalLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "230")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("1""slotLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "231")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingComplete())<span class='expansion'>qFlagLocation("2""signalLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "233")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingComplete())<span class='expansion'>qFlagLocation("1""slotLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "234")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::preparePreview()</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> DImg image = d-&gt;previewWidget-&gt;getOriginalRegionImage();</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>int</span> interpolationMethod = d-&gt;filterMethodCombo-&gt;currentIndex();</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> QList&lt;HotPixel&gt; hotPixelsRegion;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> QRect area = d-&gt;previewWidget-&gt;getOriginalImageRegionToRender();</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> <span class='keyword'>for</span> (QList&lt;HotPixel&gt;::const_iterator it = d-&gt;hotPixelsList.constBegin() ; it != d-&gt;hotPixelsList.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> HotPixel hp = (*it);</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='keyword'>if</span> (area.contains( hp.rect ))</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> hp.rect.moveTopLeft(QPoint( hp.rect.x()-area.x(), hp.rect.y()-area.y() ));</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> hotPixelsRegion.append(hp);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> setFilter(<span class='keyword'>dynamic_cast</span>&lt;DImgThreadedFilter*&gt;(<span class='keyword'>new</span> HotPixelFixer(&amp;image, <span class='keyword'>this</span>, hotPixelsRegion, interpolationMethod)));</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::prepareFinal()</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='keyword'>int</span> interpolationMethod = d-&gt;filterMethodCombo-&gt;currentIndex();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> ImageIface iface;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> setFilter(<span class='keyword'>dynamic_cast</span>&lt;DImgThreadedFilter*&gt;(<span class='keyword'>new</span> HotPixelFixer(iface.original(), <span class='keyword'>this</span>, d-&gt;hotPixelsList, interpolationMethod)));</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::setPreviewImage()</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> d-&gt;previewWidget-&gt;setPreviewImage(filter()-&gt;getTargetImage());</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::setFinalImage()</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> ImageIface iface;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> iface.setOriginal(<span class='macro'>i18n(<span class='string_literal'>"Hot Pixels Correction"</span>)<span class='expansion'>i18nd("digikam", "Hot Pixels Correction")</span></span>, filter()-&gt;filterAction(), filter()-&gt;getTargetImage());</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotBlackFrame(<span class='keyword'>const</span> QList&lt;HotPixel&gt;&amp; hpList, <span class='keyword'>const</span> QUrl&amp; blackFrameURL)</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> d-&gt;blackFrameURL = blackFrameURL;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> d-&gt;hotPixelsList = hpList;</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> QPolygon pointList(d-&gt;hotPixelsList.size());</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> QList &lt;HotPixel&gt;::const_iterator it;</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> <span class='keyword'>int</span> i = 0;</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='keyword'>for</span> (it = d-&gt;hotPixelsList.constBegin() ; it != d-&gt;hotPixelsList.constEnd() ; ++it, ++i)</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> pointList.setPoint(i, (*it).rect.center());</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> d-&gt;previewWidget-&gt;setHighLightPoints(pointList);</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> slotPreview();</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line">} <span class='comment'>// namespace DigikamEditorHotPixelsToolPlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-bf8eff.html b/static/reports/clang/master/report-07b31e.html
similarity index 99%
rename from static/reports/clang/master/report-bf8eff.html
rename to static/reports/clang/master/report-07b31e.html
index 60d8b25cb..8847669f1 100644
--- a/static/reports/clang/master/report-bf8eff.html
+++ b/static/reports/clang/master/report-07b31e.html
@@ -1,638 +1,638 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testDirectChildrenLoading -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 48e3478d087009c441b0fef84c12ae36 -->
<!-- BUGLINE 185 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 26 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 185, column 1</a><br />Potential leak of memory pointed to by 'indirectChild.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "95": 1, "96": 1, "97": 1, "164": 1, "165": 1, "166": 1, "167": 1, "168": 1, "169": 1, "171": 1, "172": 1, "174": 1, "175": 1, "176": 1, "177": 1, "179": 1, "180": 1, "181": 1, "182": 1, "184": 1, "185": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild1)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:46ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-72ecfd.html b/static/reports/clang/master/report-096e07.html
similarity index 99%
rename from static/reports/clang/master/report-72ecfd.html
rename to static/reports/clang/master/report-096e07.html
index cd0e720ae..2fab92355 100644
--- a/static/reports/clang/master/report-72ecfd.html
+++ b/static/reports/clang/master/report-096e07.html
@@ -1,638 +1,638 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testDirectChildrenSaving -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT a86989d1de61e0107a17bfb10f07fe9b -->
<!-- BUGLINE 208 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 26 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 208, column 1</a><br />Potential leak of memory pointed to by 'indirectChild.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "95": 1, "96": 1, "97": 1, "187": 1, "188": 1, "189": 1, "190": 1, "191": 1, "192": 1, "194": 1, "195": 1, "197": 1, "198": 1, "199": 1, "200": 1, "202": 1, "203": 1, "204": 1, "205": 1, "207": 1, "208": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild1)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:46ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-cd8406.html b/static/reports/clang/master/report-15c6bc.html
similarity index 99%
rename from static/reports/clang/master/report-cd8406.html
rename to static/reports/clang/master/report-15c6bc.html
index fb790fce2..9fd444253 100644
--- a/static/reports/clang/master/report-cd8406.html
+++ b/static/reports/clang/master/report-15c6bc.html
@@ -1,600 +1,600 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'command' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -->
<!-- FILENAME rajcetalker.cpp -->
<!-- FUNCTIONNAME closeAlbum -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 36cc80c11ef66a8da3abfab713108b7d -->
<!-- BUGLINE 207 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 4 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 207, column 1</a><br />Potential leak of memory pointed to by 'command'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"196": 1, "197": 1, "198": 1, "200": 1, "201": 1, "207": 1, "235": 1, "236": 1, "237": 1, "239": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2011-04-12</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A tool to export items to Rajce web service</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2011 by Lukas Krejci &lt;krejci.l at centrum dot cz&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2011-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "rajcetalker.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QQueue&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QNetworkReply&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QNetworkAccessManager&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QCryptographicHash&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QXmlResultItems&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QXmlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "rajcempform.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "rajcecommand.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "digikam_version.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dmetadata.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "wstoolutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "previewloadthread.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericRajcePlugin</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='keyword'>const</span> QUrl RAJCE_URL(QLatin1String(<span class='string_literal'>"http://www.rajce.idnes.cz/liveAPI/index.php"</span>));</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> RajceTalker::Private</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> : queueAccess(QMutex::Recursive),</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> netMngr(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> reply(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QQueue&lt;RajceCommand*&gt; commandQueue;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMutex queueAccess;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString tmpDir;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QNetworkAccessManager* netMngr;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QNetworkReply* reply;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> RajceSession session;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">RajceTalker::RajceTalker(QWidget* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d-&gt;tmpDir = WSToolUtils::makeTemporaryDir(<span class='string_literal'>"rajce"</span>).absolutePath() + QLatin1Char('/');</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;netMngr = <span class='keyword'>new</span> QNetworkAccessManager(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> connect(d-&gt;netMngr, <span class='macro'>SIGNAL(finished(QNetworkReply*))<span class='expansion'>qFlagLocation("2""finished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "84")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotFinished(QNetworkReply*))<span class='expansion'>qFlagLocation("1""slotFinished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "85")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">RajceTalker::~RajceTalker()</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> WSToolUtils::removeTemporaryDir(<span class='string_literal'>"rajce"</span>);</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>const</span> RajceSession&amp; RajceTalker::session() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>void</span> RajceTalker::startCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 102, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Sending command:\n"</span> &lt;&lt; command-&gt;getXml();</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> QByteArray data = command-&gt;encode();</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> QNetworkRequest netRequest(RAJCE_URL);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> netRequest.setHeader(QNetworkRequest::ContentTypeHeader, command-&gt;contentType());</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;reply = d-&gt;netMngr-&gt;post(netRequest, data);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> connect(d-&gt;reply, <span class='macro'>SIGNAL(uploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("2""uploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "111")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>SLOT(slotUploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("1""slotUploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "112")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> emit signalBusyStarted(command-&gt;commandType());</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"><span class='keyword'>void</span> RajceTalker::login(<span class='keyword'>const</span> QString&amp; username, <span class='keyword'>const</span> QString&amp; password)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> LoginCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> LoginCommand(username, password);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> RajceTalker::loadAlbums()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> AlbumListCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AlbumListCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"><span class='keyword'>void</span> RajceTalker::createAlbum(<span class='keyword'>const</span> QString&amp; name, <span class='keyword'>const</span> QString&amp; description, <span class='keyword'>bool</span> visible)</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> CreateAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CreateAlbumCommand(name, description, visible, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotFinished(QNetworkReply* reply)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (reply != d-&gt;reply)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> QString response = QString::fromUtf8(reply-&gt;readAll());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 144, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; response;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> RajceCommand* <span class='keyword'>const</span> c = d-&gt;commandQueue.head();</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> c-&gt;processResponse(response, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> RajceCommandType type = c-&gt;commandType();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>delete</span> c;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 157, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"State after command: "</span> &lt;&lt; d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>// Let the users react on the command before we</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>// let the next queued command in.</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>// This enables the connected slots to read in</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>// reliable values from the state and/or</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>// clear the error state once it's handled.</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> emit signalBusyFinished(type);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> reply-&gt;deleteLater();</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>// Only dequeue the command after the above signal has been</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='comment'>// emitted so that the users can queue other commands</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='comment'>// without them being started straight away in the enqueue</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='comment'>// method which would happen if the command was dequed</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='comment'>// before the signal and the signal was emitted in the same</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='comment'>// thread (which is the case (always?)).</span></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;commandQueue.dequeue();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='comment'>// see if there's something to continue with</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> startCommand(d-&gt;commandQueue.head());</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>void</span> RajceTalker::logout()</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>//TODO</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>void</span> RajceTalker::openAlbum(<span class='keyword'>const</span> RajceAlbum&amp; album)</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> OpenAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> OpenAlbumCommand(album.id, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> RajceTalker::closeAlbum()</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!d-&gt;session.openAlbumToken().isEmpty()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> CloseAlbumCommand* <span class='keyword'>const</span> command = <span class="mrange"><span class='keyword'>new</span> CloseAlbumCommand(d-&gt;session)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:44ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> emit signalBusyFinished(CloseAlbum);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'command'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"><span class='keyword'>void</span> RajceTalker::uploadPhoto(<span class='keyword'>const</span> QString&amp; path, <span class='keyword'>unsigned</span> dimension, <span class='keyword'>int</span> jpgQuality)</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> AddPhotoCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AddPhotoCommand(d-&gt;tmpDir, path, dimension, jpgQuality, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> RajceTalker::clearLastError()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> d-&gt;session.lastErrorCode() = 0;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> d-&gt;session.lastErrorMessage() = QLatin1String(<span class='string_literal'>""</span>);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotUploadProgress(qint64 bytesSent, qint64 bytesTotal)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (bytesTotal &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>unsigned</span> percent = (<span class='keyword'>unsigned</span>)((<span class='keyword'>float</span>)bytesSent / bytesTotal * 100);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 230, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Percent signalled: "</span> &lt;&lt; percent;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> emit signalBusyProgress(d-&gt;commandQueue.head()-&gt;commandType(), percent);</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"><span class='keyword'>void</span> RajceTalker::enqueueCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> (d-&gt;session.lastErrorCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> d-&gt;commandQueue.enqueue(command);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> startCommand(command);</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"><span class='keyword'>void</span> RajceTalker::cancelCurrentCommand()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='keyword'>if</span> (d-&gt;reply != <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> slotFinished(d-&gt;reply);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> d-&gt;reply-&gt;abort();</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"><span class='keyword'>void</span> RajceTalker::init(<span class='keyword'>const</span> RajceSession&amp; initialState)</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;session = initialState;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">} <span class='comment'>// namespace DigikamGenericRajcePlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-72f8ad.html b/static/reports/clang/master/report-1c256f.html
similarity index 99%
rename from static/reports/clang/master/report-72f8ad.html
rename to static/reports/clang/master/report-1c256f.html
index 288d1a08a..03c2a3728 100644
--- a/static/reports/clang/master/report-72f8ad.html
+++ b/static/reports/clang/master/report-1c256f.html
@@ -1,598 +1,598 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'command' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -->
<!-- FILENAME rajcetalker.cpp -->
<!-- FUNCTIONNAME uploadPhoto -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 2e93eb8e2754e264eb4a538b883b02d9 -->
<!-- BUGLINE 213 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 2 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 213, column 1</a><br />Potential leak of memory pointed to by 'command'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"209": 1, "210": 1, "211": 1, "212": 1, "213": 1, "235": 1, "236": 1, "237": 1, "239": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2011-04-12</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A tool to export items to Rajce web service</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2011 by Lukas Krejci &lt;krejci.l at centrum dot cz&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2011-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "rajcetalker.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QQueue&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QNetworkReply&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QNetworkAccessManager&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QCryptographicHash&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QXmlResultItems&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QXmlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "rajcempform.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "rajcecommand.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "digikam_version.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dmetadata.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "wstoolutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "previewloadthread.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericRajcePlugin</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='keyword'>const</span> QUrl RAJCE_URL(QLatin1String(<span class='string_literal'>"http://www.rajce.idnes.cz/liveAPI/index.php"</span>));</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> RajceTalker::Private</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> : queueAccess(QMutex::Recursive),</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> netMngr(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> reply(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QQueue&lt;RajceCommand*&gt; commandQueue;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMutex queueAccess;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString tmpDir;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QNetworkAccessManager* netMngr;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QNetworkReply* reply;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> RajceSession session;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">RajceTalker::RajceTalker(QWidget* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d-&gt;tmpDir = WSToolUtils::makeTemporaryDir(<span class='string_literal'>"rajce"</span>).absolutePath() + QLatin1Char('/');</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;netMngr = <span class='keyword'>new</span> QNetworkAccessManager(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> connect(d-&gt;netMngr, <span class='macro'>SIGNAL(finished(QNetworkReply*))<span class='expansion'>qFlagLocation("2""finished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "84")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotFinished(QNetworkReply*))<span class='expansion'>qFlagLocation("1""slotFinished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "85")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">RajceTalker::~RajceTalker()</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> WSToolUtils::removeTemporaryDir(<span class='string_literal'>"rajce"</span>);</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>const</span> RajceSession&amp; RajceTalker::session() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>void</span> RajceTalker::startCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 102, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Sending command:\n"</span> &lt;&lt; command-&gt;getXml();</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> QByteArray data = command-&gt;encode();</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> QNetworkRequest netRequest(RAJCE_URL);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> netRequest.setHeader(QNetworkRequest::ContentTypeHeader, command-&gt;contentType());</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;reply = d-&gt;netMngr-&gt;post(netRequest, data);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> connect(d-&gt;reply, <span class='macro'>SIGNAL(uploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("2""uploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "111")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>SLOT(slotUploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("1""slotUploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "112")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> emit signalBusyStarted(command-&gt;commandType());</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"><span class='keyword'>void</span> RajceTalker::login(<span class='keyword'>const</span> QString&amp; username, <span class='keyword'>const</span> QString&amp; password)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> LoginCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> LoginCommand(username, password);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> RajceTalker::loadAlbums()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> AlbumListCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AlbumListCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"><span class='keyword'>void</span> RajceTalker::createAlbum(<span class='keyword'>const</span> QString&amp; name, <span class='keyword'>const</span> QString&amp; description, <span class='keyword'>bool</span> visible)</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> CreateAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CreateAlbumCommand(name, description, visible, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotFinished(QNetworkReply* reply)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (reply != d-&gt;reply)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> QString response = QString::fromUtf8(reply-&gt;readAll());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 144, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; response;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> RajceCommand* <span class='keyword'>const</span> c = d-&gt;commandQueue.head();</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> c-&gt;processResponse(response, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> RajceCommandType type = c-&gt;commandType();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>delete</span> c;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 157, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"State after command: "</span> &lt;&lt; d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>// Let the users react on the command before we</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>// let the next queued command in.</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>// This enables the connected slots to read in</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>// reliable values from the state and/or</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>// clear the error state once it's handled.</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> emit signalBusyFinished(type);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> reply-&gt;deleteLater();</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>// Only dequeue the command after the above signal has been</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='comment'>// emitted so that the users can queue other commands</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='comment'>// without them being started straight away in the enqueue</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='comment'>// method which would happen if the command was dequed</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='comment'>// before the signal and the signal was emitted in the same</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='comment'>// thread (which is the case (always?)).</span></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;commandQueue.dequeue();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='comment'>// see if there's something to continue with</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> startCommand(d-&gt;commandQueue.head());</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>void</span> RajceTalker::logout()</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>//TODO</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>void</span> RajceTalker::openAlbum(<span class='keyword'>const</span> RajceAlbum&amp; album)</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> OpenAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> OpenAlbumCommand(album.id, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> RajceTalker::closeAlbum()</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;session.openAlbumToken().isEmpty())</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> CloseAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CloseAlbumCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> emit signalBusyFinished(CloseAlbum);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"><span class='keyword'>void</span> RajceTalker::uploadPhoto(<span class='keyword'>const</span> QString&amp; path, <span class='keyword'>unsigned</span> dimension, <span class='keyword'>int</span> jpgQuality)</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> AddPhotoCommand* <span class='keyword'>const</span> command = <span class="mrange"><span class='keyword'>new</span> AddPhotoCommand(d-&gt;tmpDir, path, dimension, jpgQuality, d-&gt;session)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:38ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'command'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> RajceTalker::clearLastError()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> d-&gt;session.lastErrorCode() = 0;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> d-&gt;session.lastErrorMessage() = QLatin1String(<span class='string_literal'>""</span>);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotUploadProgress(qint64 bytesSent, qint64 bytesTotal)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (bytesTotal &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>unsigned</span> percent = (<span class='keyword'>unsigned</span>)((<span class='keyword'>float</span>)bytesSent / bytesTotal * 100);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 230, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Percent signalled: "</span> &lt;&lt; percent;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> emit signalBusyProgress(d-&gt;commandQueue.head()-&gt;commandType(), percent);</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"><span class='keyword'>void</span> RajceTalker::enqueueCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> (d-&gt;session.lastErrorCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> d-&gt;commandQueue.enqueue(command);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> startCommand(command);</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"><span class='keyword'>void</span> RajceTalker::cancelCurrentCommand()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='keyword'>if</span> (d-&gt;reply != <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> slotFinished(d-&gt;reply);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> d-&gt;reply-&gt;abort();</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"><span class='keyword'>void</span> RajceTalker::init(<span class='keyword'>const</span> RajceSession&amp; initialState)</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;session = initialState;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">} <span class='comment'>// namespace DigikamGenericRajcePlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-d39b85.html b/static/reports/clang/master/report-1c3f44.html
similarity index 99%
rename from static/reports/clang/master/report-d39b85.html
rename to static/reports/clang/master/report-1c3f44.html
index d26a61aba..ea676689f 100644
--- a/static/reports/clang/master/report-d39b85.html
+++ b/static/reports/clang/master/report-1c3f44.html
@@ -1,598 +1,598 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'command' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -->
<!-- FILENAME rajcetalker.cpp -->
<!-- FUNCTIONNAME openAlbum -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 65a4afabf2ad509f497f31861e95cd9e -->
<!-- BUGLINE 194 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 2 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 194, column 1</a><br />Potential leak of memory pointed to by 'command'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"190": 1, "191": 1, "192": 1, "193": 1, "194": 1, "235": 1, "236": 1, "237": 1, "239": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2011-04-12</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A tool to export items to Rajce web service</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2011 by Lukas Krejci &lt;krejci.l at centrum dot cz&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2011-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "rajcetalker.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QQueue&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QNetworkReply&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QNetworkAccessManager&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QCryptographicHash&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QXmlResultItems&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QXmlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "rajcempform.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "rajcecommand.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "digikam_version.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dmetadata.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "wstoolutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "previewloadthread.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericRajcePlugin</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='keyword'>const</span> QUrl RAJCE_URL(QLatin1String(<span class='string_literal'>"http://www.rajce.idnes.cz/liveAPI/index.php"</span>));</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> RajceTalker::Private</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> : queueAccess(QMutex::Recursive),</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> netMngr(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> reply(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QQueue&lt;RajceCommand*&gt; commandQueue;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMutex queueAccess;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString tmpDir;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QNetworkAccessManager* netMngr;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QNetworkReply* reply;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> RajceSession session;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">RajceTalker::RajceTalker(QWidget* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d-&gt;tmpDir = WSToolUtils::makeTemporaryDir(<span class='string_literal'>"rajce"</span>).absolutePath() + QLatin1Char('/');</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;netMngr = <span class='keyword'>new</span> QNetworkAccessManager(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> connect(d-&gt;netMngr, <span class='macro'>SIGNAL(finished(QNetworkReply*))<span class='expansion'>qFlagLocation("2""finished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "84")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotFinished(QNetworkReply*))<span class='expansion'>qFlagLocation("1""slotFinished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "85")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">RajceTalker::~RajceTalker()</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> WSToolUtils::removeTemporaryDir(<span class='string_literal'>"rajce"</span>);</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>const</span> RajceSession&amp; RajceTalker::session() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>void</span> RajceTalker::startCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 102, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Sending command:\n"</span> &lt;&lt; command-&gt;getXml();</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> QByteArray data = command-&gt;encode();</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> QNetworkRequest netRequest(RAJCE_URL);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> netRequest.setHeader(QNetworkRequest::ContentTypeHeader, command-&gt;contentType());</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;reply = d-&gt;netMngr-&gt;post(netRequest, data);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> connect(d-&gt;reply, <span class='macro'>SIGNAL(uploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("2""uploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "111")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>SLOT(slotUploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("1""slotUploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "112")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> emit signalBusyStarted(command-&gt;commandType());</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"><span class='keyword'>void</span> RajceTalker::login(<span class='keyword'>const</span> QString&amp; username, <span class='keyword'>const</span> QString&amp; password)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> LoginCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> LoginCommand(username, password);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> RajceTalker::loadAlbums()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> AlbumListCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AlbumListCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"><span class='keyword'>void</span> RajceTalker::createAlbum(<span class='keyword'>const</span> QString&amp; name, <span class='keyword'>const</span> QString&amp; description, <span class='keyword'>bool</span> visible)</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> CreateAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CreateAlbumCommand(name, description, visible, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotFinished(QNetworkReply* reply)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (reply != d-&gt;reply)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> QString response = QString::fromUtf8(reply-&gt;readAll());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 144, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; response;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> RajceCommand* <span class='keyword'>const</span> c = d-&gt;commandQueue.head();</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> c-&gt;processResponse(response, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> RajceCommandType type = c-&gt;commandType();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>delete</span> c;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 157, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"State after command: "</span> &lt;&lt; d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>// Let the users react on the command before we</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>// let the next queued command in.</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>// This enables the connected slots to read in</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>// reliable values from the state and/or</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>// clear the error state once it's handled.</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> emit signalBusyFinished(type);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> reply-&gt;deleteLater();</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>// Only dequeue the command after the above signal has been</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='comment'>// emitted so that the users can queue other commands</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='comment'>// without them being started straight away in the enqueue</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='comment'>// method which would happen if the command was dequed</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='comment'>// before the signal and the signal was emitted in the same</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='comment'>// thread (which is the case (always?)).</span></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;commandQueue.dequeue();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='comment'>// see if there's something to continue with</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> startCommand(d-&gt;commandQueue.head());</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>void</span> RajceTalker::logout()</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>//TODO</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>void</span> RajceTalker::openAlbum(<span class='keyword'>const</span> RajceAlbum&amp; album)</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> OpenAlbumCommand* <span class='keyword'>const</span> command = <span class="mrange"><span class='keyword'>new</span> OpenAlbumCommand(album.id, d-&gt;session)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:39ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'command'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> RajceTalker::closeAlbum()</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;session.openAlbumToken().isEmpty())</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> CloseAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CloseAlbumCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> emit signalBusyFinished(CloseAlbum);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"><span class='keyword'>void</span> RajceTalker::uploadPhoto(<span class='keyword'>const</span> QString&amp; path, <span class='keyword'>unsigned</span> dimension, <span class='keyword'>int</span> jpgQuality)</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> AddPhotoCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AddPhotoCommand(d-&gt;tmpDir, path, dimension, jpgQuality, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> RajceTalker::clearLastError()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> d-&gt;session.lastErrorCode() = 0;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> d-&gt;session.lastErrorMessage() = QLatin1String(<span class='string_literal'>""</span>);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotUploadProgress(qint64 bytesSent, qint64 bytesTotal)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (bytesTotal &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>unsigned</span> percent = (<span class='keyword'>unsigned</span>)((<span class='keyword'>float</span>)bytesSent / bytesTotal * 100);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 230, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Percent signalled: "</span> &lt;&lt; percent;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> emit signalBusyProgress(d-&gt;commandQueue.head()-&gt;commandType(), percent);</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"><span class='keyword'>void</span> RajceTalker::enqueueCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> (d-&gt;session.lastErrorCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> d-&gt;commandQueue.enqueue(command);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> startCommand(command);</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"><span class='keyword'>void</span> RajceTalker::cancelCurrentCommand()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='keyword'>if</span> (d-&gt;reply != <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> slotFinished(d-&gt;reply);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> d-&gt;reply-&gt;abort();</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"><span class='keyword'>void</span> RajceTalker::init(<span class='keyword'>const</span> RajceSession&amp; initialState)</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;session = initialState;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">} <span class='comment'>// namespace DigikamGenericRajcePlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-ed70f3.html b/static/reports/clang/master/report-1cc52f.html
similarity index 99%
rename from static/reports/clang/master/report-ed70f3.html
rename to static/reports/clang/master/report-1cc52f.html
index 700e0ab56..27bd97b12 100644
--- a/static/reports/clang/master/report-ed70f3.html
+++ b/static/reports/clang/master/report-1cc52f.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectStatelessChild.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenLoading -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 61f569a685c8e504ffc35c286c1eaebf -->
<!-- BUGLINE 246 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 246, column 1</a><br />Potential leak of memory pointed to by 'indirectStatelessChild.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "100": 1, "101": 1, "102": 1, "210": 1, "211": 1, "212": 1, "213": 1, "214": 1, "215": 1, "216": 1, "217": 1, "218": 1, "219": 1, "221": 1, "222": 1, "224": 1, "226": 1, "227": 1, "228": 1, "229": 1, "230": 1, "231": 1, "232": 1, "234": 1, "235": 1, "236": 1, "237": 1, "238": 1, "239": 1, "240": 1, "241": 1, "243": 1, "245": 1, "246": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChildStateless)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectStatelessChild.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-309374.html b/static/reports/clang/master/report-24942e.html
similarity index 99%
rename from static/reports/clang/master/report-309374.html
rename to static/reports/clang/master/report-24942e.html
index 70d56e518..94a8145c2 100644
--- a/static/reports/clang/master/report-309374.html
+++ b/static/reports/clang/master/report-24942e.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild2.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenLoading -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT f663a6dd8cdf66e80654e13e6f6fe60f -->
<!-- BUGLINE 246 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 246, column 1</a><br />Potential leak of memory pointed to by 'indirectChild2.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "100": 1, "101": 1, "102": 1, "210": 1, "211": 1, "212": 1, "213": 1, "214": 1, "215": 1, "216": 1, "217": 1, "218": 1, "219": 1, "221": 1, "222": 1, "224": 1, "226": 1, "227": 1, "228": 1, "229": 1, "230": 1, "231": 1, "232": 1, "234": 1, "235": 1, "236": 1, "237": 1, "238": 1, "239": 1, "240": 1, "241": 1, "243": 1, "245": 1, "246": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild2)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild2.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-6df191.html b/static/reports/clang/master/report-26a0ec.html
similarity index 99%
rename from static/reports/clang/master/report-6df191.html
rename to static/reports/clang/master/report-26a0ec.html
index efba730d5..b1a9f994e 100644
--- a/static/reports/clang/master/report-6df191.html
+++ b/static/reports/clang/master/report-26a0ec.html
@@ -1,466 +1,466 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'PNGBox' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp -->
<!-- FILENAME converttopng.cpp -->
<!-- FUNCTIONNAME registerSettingsWidget -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT b848384b59da2064c4cdf8957d05847c -->
<!-- BUGLINE 74 -->
<!-- BUGCOLUMN 22 -->
<!-- BUGPATHLENGTH 2 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 74, column 22</a><br />Potential leak of memory pointed to by 'PNGBox'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name converttopng.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KXmlGui -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/KService -D Bqm_ConvertToPNG_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/bqm/convert/converttopng/Bqm_ConvertToPNG_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /mnt/devel/GIT/6.x/core/libs/database/imagehistory -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/bqm/convert/converttopng -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name converttopng.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KXmlGui -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/KService -D Bqm_ConvertToPNG_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/bqm/convert/converttopng/Bqm_ConvertToPNG_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /mnt/devel/GIT/6.x/core/libs/database/imagehistory -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/bqm/convert/converttopng -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"57": 1, "58": 1, "59": 1, "60": 1, "61": 1, "64": 1, "65": 1, "66": 1, "68": 1, "69": 1, "71": 1, "72": 1, "74": 1}, "52325": {"1338": 1, "1339": 1, "1340": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2008-11-28</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : PNG image Converter batch tool.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2008-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "converttopng.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QLabel&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;klocalizedstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "dlayoutbox.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "pngsettings.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>namespace</span> DigikamBqmConvertToPngPlugin</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line">ConvertToPNG::ConvertToPNG(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> : BatchTool(QLatin1String(<span class='string_literal'>"ConvertToPNG"</span>), ConvertTool, parent)</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> m_changeSettings = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line">ConvertToPNG::~ConvertToPNG()</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='keyword'>void</span> ConvertToPNG::registerSettingsWidget()</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> DVBox* <span class='keyword'>const</span> vbox = <span class='keyword'>new</span> DVBox;</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> PNGSettings* <span class='keyword'>const</span> PNGBox = <span class="mrange"><span class='keyword'>new</span> PNGSettings(vbox)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:33ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> QLabel* <span class='keyword'>const</span> note = <span class='keyword'>new</span> QLabel(<span class='macro'>i18n(<span class='string_literal'>"&lt;b&gt;If conversion to PNG fails, this may be due to the "<span class='expansion'>i18nd("digikam", "&lt;b&gt;If conversion to PNG fails, this may be due to the "<br> "color profile check. Simply insert the tool for " "color profile conversion before this tool and "<br> "select the desired color profile.&lt;/b&gt;")</span></span></span></td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> <span class='string_literal'><span class='macro'>"color profile check. Simply insert the tool for "<span class='expansion'>i18nd("digikam", "&lt;b&gt;If conversion to PNG fails, this may be due to the "<br> "color profile check. Simply insert the tool for " "color profile conversion before this tool and "<br> "select the desired color profile.&lt;/b&gt;")</span></span></span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> <span class='string_literal'><span class='macro'>"color profile conversion before this tool and "<span class='expansion'>i18nd("digikam", "&lt;b&gt;If conversion to PNG fails, this may be due to the "<br> "color profile check. Simply insert the tool for " "color profile conversion before this tool and "<br> "select the desired color profile.&lt;/b&gt;")</span></span></span></td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='string_literal'><span class='macro'>"select the desired color profile.&lt;/b&gt;"</span>)<span class='expansion'>i18nd("digikam", "&lt;b&gt;If conversion to PNG fails, this may be due to the "<br> "color profile check. Simply insert the tool for " "color profile conversion before this tool and "<br> "select the desired color profile.&lt;/b&gt;")</span></span>, vbox);</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> note-&gt;setWordWrap(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> note-&gt;setFrameStyle(QFrame::StyledPanel | QFrame::Raised);</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QLabel* <span class='keyword'>const</span> space = <span class='keyword'>new</span> QLabel(vbox);</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> vbox-&gt;setStretchFactor(space, 10);</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> connect(PNGBox, <span class='macro'>SIGNAL(signalSettingsChanged())<span class='expansion'>qFlagLocation("2""signalSettingsChanged()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp"<br> ":" "71")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotSettingsChanged())<span class='expansion'>qFlagLocation("1""slotSettingsChanged()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng/converttopng.cpp"<br> ":" "72")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> m_settingsWidget = vbox;</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'PNGBox'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> BatchTool::registerSettingsWidget();</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line">BatchToolSettings ConvertToPNG::defaultSettings()</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> KSharedConfig::Ptr config = KSharedConfig::openConfig();</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> KConfigGroup group = config-&gt;group(QLatin1String(<span class='string_literal'>"ImageViewer Settings"</span>));</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='keyword'>int</span> compression = group.readEntry(QLatin1String(<span class='string_literal'>"PNGCompression"</span>), 9);</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> BatchToolSettings settings;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> settings.insert(QLatin1String(<span class='string_literal'>"Quality"</span>), compression);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> <span class='keyword'>return</span> settings;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"><span class='keyword'>void</span> ConvertToPNG::slotAssignSettings2Widget()</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> m_changeSettings = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> PNGSettings* <span class='keyword'>const</span> PNGBox = <span class='keyword'>dynamic_cast</span>&lt;PNGSettings*&gt;(m_settingsWidget);</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='keyword'>if</span> (PNGBox)</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> PNGBox-&gt;setCompressionValue(settings()[QLatin1String(<span class='string_literal'>"Quality"</span>)].toInt());</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> m_changeSettings = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"><span class='keyword'>void</span> ConvertToPNG::slotSettingsChanged()</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>if</span> (m_changeSettings)</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> PNGSettings* <span class='keyword'>const</span> PNGBox = <span class='keyword'>dynamic_cast</span>&lt;PNGSettings*&gt;(m_settingsWidget);</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='keyword'>if</span> (PNGBox)</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> BatchToolSettings settings;</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> settings.insert(QLatin1String(<span class='string_literal'>"Quality"</span>), PNGBox-&gt;getCompressionValue());</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> BatchTool::slotSettingsChanged(settings);</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">QString ConvertToPNG::outputSuffix() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> <span class='keyword'>return</span> QLatin1String(<span class='string_literal'>"png"</span>);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>bool</span> ConvertToPNG::toolOperations()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>if</span> (!loadToDImg())</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>int</span> PNGCompression = PNGSettings::convertCompressionForLibPng(settings()[QLatin1String(<span class='string_literal'>"Quality"</span>)].toInt());</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> image().setAttribute(QLatin1String(<span class='string_literal'>"quality"</span>), PNGCompression);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>return</span> (savefromDImg());</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">} <span class='comment'>// namespace DigikamBqmConvertToPngPlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-c907b3.html b/static/reports/clang/master/report-332d54.html
similarity index 99%
rename from static/reports/clang/master/report-c907b3.html
rename to static/reports/clang/master/report-332d54.html
index 5c6400111..e07cd1ac2 100644
--- a/static/reports/clang/master/report-c907b3.html
+++ b/static/reports/clang/master/report-332d54.html
@@ -1,638 +1,638 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'directChild2.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testDirectChildrenLoading -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 614990e7ed118ac91e50c87b7b231a74 -->
<!-- BUGLINE 185 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 26 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 185, column 1</a><br />Potential leak of memory pointed to by 'directChild2.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "95": 1, "96": 1, "97": 1, "164": 1, "165": 1, "166": 1, "167": 1, "168": 1, "169": 1, "171": 1, "172": 1, "174": 1, "175": 1, "176": 1, "177": 1, "179": 1, "180": 1, "181": 1, "182": 1, "184": 1, "185": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(parentSaver)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:46ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'directChild2.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-55e94f.html b/static/reports/clang/master/report-45aa80.html
similarity index 99%
rename from static/reports/clang/master/report-55e94f.html
rename to static/reports/clang/master/report-45aa80.html
index 59788a1eb..c6cf97225 100644
--- a/static/reports/clang/master/report-55e94f.html
+++ b/static/reports/clang/master/report-45aa80.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectStatelessChild.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenSaving -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 1e4042625a515a5de85bf1577e51d6c7 -->
<!-- BUGLINE 284 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 284, column 1</a><br />Potential leak of memory pointed to by 'indirectStatelessChild.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "95": 1, "96": 1, "97": 1, "105": 1, "106": 1, "107": 1, "248": 1, "249": 1, "250": 1, "251": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1, "259": 1, "260": 1, "262": 1, "264": 1, "265": 1, "266": 1, "267": 1, "268": 1, "269": 1, "270": 1, "272": 1, "273": 1, "274": 1, "275": 1, "276": 1, "277": 1, "278": 1, "279": 1, "281": 1, "283": 1, "284": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChildStateless)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectStatelessChild.wp.value'</td></tr></table></div></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-c85ae6.html b/static/reports/clang/master/report-51b0a5.html
similarity index 99%
rename from static/reports/clang/master/report-c85ae6.html
rename to static/reports/clang/master/report-51b0a5.html
index d63977991..ec328c4d1 100644
--- a/static/reports/clang/master/report-c85ae6.html
+++ b/static/reports/clang/master/report-51b0a5.html
@@ -1,2819 +1,2819 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Array access (from variable 'ypoints') results in a null pointer dereference -->
<!-- BUGTYPE Dereference of null pointer -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -->
<!-- FILENAME dimg_scale.cpp -->
<!-- FUNCTIONNAME dimgScaleAARGBA16 -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 0b0b2287ec40a78114a6f3bbe12e7182 -->
<!-- BUGLINE 2340 -->
<!-- BUGCOLUMN 24 -->
<!-- BUGPATHLENGTH 41 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 2340, column 24</a><br />Array access (from variable 'ypoints') results in a null pointer dereference</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"65": 1, "66": 1, "67": 1, "68": 1, "69": 1, "70": 1, "71": 1, "72": 1, "264": 1, "265": 1, "266": 1, "267": 1, "270": 1, "271": 1, "272": 1, "273": 1, "274": 1, "275": 1, "278": 1, "283": 1, "289": 1, "292": 1, "293": 1, "295": 1, "301": 1, "306": 1, "313": 1, "319": 1, "325": 1, "331": 1, "333": 1, "335": 1, "337": 1, "339": 1, "340": 1, "341": 1, "342": 1, "343": 1, "397": 1, "398": 1, "399": 1, "400": 1, "401": 1, "402": 1, "404": 1, "405": 1, "406": 1, "408": 1, "410": 1, "411": 1, "414": 1, "437": 1, "438": 1, "439": 1, "440": 1, "441": 1, "443": 1, "444": 1, "445": 1, "447": 1, "449": 1, "450": 1, "453": 1, "456": 1, "457": 1, "458": 1, "459": 1, "461": 1, "464": 1, "486": 1, "487": 1, "488": 1, "489": 1, "490": 1, "492": 1, "494": 1, "495": 1, "496": 1, "497": 1, "501": 1, "504": 1, "505": 1, "506": 1, "507": 1, "508": 1, "509": 1, "510": 1, "511": 1, "513": 1, "514": 1, "516": 1, "518": 1, "520": 1, "527": 1, "528": 1, "531": 1, "533": 1, "535": 1, "554": 1, "1979": 1, "1980": 1, "1981": 1, "1982": 1, "1983": 1, "1984": 1, "1985": 1, "1986": 1, "1990": 1, "1991": 1, "1992": 1, "1993": 1, "1994": 1, "1995": 1, "1996": 1, "1997": 1, "1998": 1, "1999": 1, "2000": 1, "2001": 1, "2002": 1, "2003": 1, "2004": 1, "2005": 1, "2007": 1, "2008": 1, "2009": 1, "2010": 1, "2013": 1, "2130": 1, "2224": 1, "2325": 1, "2326": 1, "2327": 1, "2328": 1, "2330": 1, "2332": 1, "2333": 1, "2334": 1, "2336": 1, "2338": 1, "2339": 1, "2340": 1}, "17066": {"130": 1, "131": 1, "133": 1, "134": 1}, "17430": {"184": 1, "185": 1, "199": 1, "200": 1, "214": 1, "215": 1, "217": 1, "218": 1, "265": 1, "266": 1, "268": 1, "269": 1, "444": 1, "445": 1, "446": 1}, "46996": {"245": 1, "246": 1, "247": 1, "248": 1, "250": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-14</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : digiKam 8/16 bits image management API.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* Description : Smoothscale method based on Imlib2's implementations.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* https://git.enlightenment.org/legacy/imlib2.git/tree/src/lib/scale.c</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Ported to C++ and QImage</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Add smoothScaleSection to scale only an image section.</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* Add 16 bits color depth image support.</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Copyright (C) 1999-2004 by Carsten Haitzler &lt;raster at rasterman dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Copyright (C) 2004 by Willem Monsuwe &lt;willem at stack dot nl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Daniel M. Duley &lt;mosfet at interaccess dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// C ANSI includes</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='keyword'>extern</span> <span class='string_literal'>"C"</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;stdint.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include &lt;cstring&gt;</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;cstdlib&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include &lt;cstdio&gt;</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "dimg_p.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='keyword'>typedef</span> uint64_t ullong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='keyword'>typedef</span> int64_t llong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>namespace</span> DImgScale</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> DImgScaleInfo</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> xpoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> ypoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> <span class="mrange">ypoints16 = <span class='keyword'>nullptr</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Null pointer value stored to field 'ypoints16'</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> xapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> yapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> xup_yup = 0;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> ~DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>delete</span> [] xpoints;</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>delete</span> [] ypoints;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='keyword'>delete</span> [] ypoints16;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>delete</span> [] xapoints;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='keyword'>delete</span> [] yapoints;</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='keyword'>int</span>* xpoints;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> uint** ypoints;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> ullong** ypoints16;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>int</span>* xapoints;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='keyword'>int</span>* yapoints;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>int</span> xup_yup;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line">uint** dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">ullong** dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"><span class='keyword'>int</span>* dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw);</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>int</span>* dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">DImgScaleInfo* dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>bool</span> sixteenBit,</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='keyword'>bool</span> aa);</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"><span class='comment'>// 8 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"><span class='comment'>// 16 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"><span class='comment'>// 8 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"><span class='comment'>// 8 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='comment'>// 16 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"><span class='comment'>// 16 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> DImgScale;</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"><span class='comment'>#define CLIP(x, y, w, h, xx, yy, ww, hh) \</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"><span class='comment'>if (x &lt; (xx)) {w += (x - (xx)); x = (xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"><span class='comment'>if (y &lt; (yy)) {h += (y - (yy)); y = (yy);} \</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='comment'>if ((x + w) &gt; ((xx) + (ww))) {w = (ww) - (x - xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"><span class='comment'>if ((y + h) &gt; ((yy) + (hh))) {h = (hh) - (y - yy);}</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>const</span> QSize&amp; destSize, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QSize scaleSize = size();</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> scaleSize.scale(destSize, aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='keyword'>if</span> (scaleSize.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>return</span> smoothScaleClipped(scaleSize, QRect(QPoint(0, 0), scaleSize));</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>return</span> smoothScale(QSize(dw, dh), aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>const</span> QSize&amp; destSize, <span class='keyword'>const</span> QRect&amp; clip) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>return</span> DImg::smoothScaleClipped(destSize.width(), destSize.height(),</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> clip.x(), clip.y(), clip.width(), clip.height());</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> clipx, <span class='keyword'>int</span> clipy, <span class='keyword'>int</span> clipw, <span class='keyword'>int</span> cliph) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>if</span> (dw &lt;= 0 || dh &lt;= 0 || clipw &lt;= 0 || cliph &lt;= 0 || isNull())</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>if</span> (w &lt;= 0 || h &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='comment'>// ensure clip is valid</span></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(clipx, clipy, clipw, cliph, dw, dh))</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>if</span> ((w == (uint)dw) &amp;&amp; (h == (uint)dh))</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='keyword'>if</span> (clipw == dw &amp;&amp; cliph == dh)</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>return</span> copy();</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>return</span> copy(clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> DImgScaleInfo* scaleinfo = dimgCalcScaleInfo(*<span class='keyword'>this</span>, w, h, dw, dh, sixteenBit(), <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>if</span> (sixteenBit())</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> dimgScaleAARGBA(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> dimgScaleAARGB(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>const</span> QRect&amp; sourceRect, <span class='keyword'>const</span> QSize&amp; destSize) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">smoothScaleSection(sourceRect.x(), sourceRect.y(), sourceRect.width(), sourceRect.height(),</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Calling 'DImg::smoothScaleSection'</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange">destSize.width(), destSize.height())</span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>int</span> sx, <span class='keyword'>int</span> sy,</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='comment'>// sanity checks</span></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">dw &lt;= 0</span>) || (<span class="mrange">dh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming 'dw' is &gt; 0</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming 'dh' is &gt; 0</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='comment'>// clip the source rect to be within the actual image</span></td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='keyword'>int</span> <span class='comment'>/*psx, psy,*/</span> psw, psh;</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"><span class='comment'>// psx = sx;</span></td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"><span class='comment'>// psy = sy;</span></td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> psw = sw;</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> psh = sh;</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(sx, sy, sw, sh, w, h))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='comment'>// clip output coords to clipped input coords</span></td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psw != sw</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Assuming 'psw' is equal to 'sw'</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> dw = (dw * sw) / psw;</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psh != sh</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming 'psh' is equal to 'sh'</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> dh = (dh * sh) / psh;</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='comment'>// do a second check to see if we now have invalid coords</span></td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> <span class='comment'>// do not do anything if we have a 0 width or height image to render</span></td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>if</span> ((dw &lt;= 0) || (dh &lt;= 0))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> <span class='comment'>// if the input rect size &lt; 0 do not render either</span></td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw == dw</span>) &amp;&amp; (sh == dh))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming 'sw' is not equal to 'dw'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> <span class='keyword'>return</span> copy(sx, sy, sw, sh);</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> <span class='comment'>// calculate scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> DImgScaleInfo* scaleinfo = <span class="mrange"><span class="mrange">dimgCalcScaleInfo(*<span class='keyword'>this</span>, sw, sh, dw, dh, sixteenBit(), <span class='keyword'>true</span>)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Calling 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Returning from 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">hasAlpha()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> <span class="mrange">dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGBA16'</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class="mrange">((sx * dw) / sw),</td></tr></span>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> <span class="mrange">((sy * dh) / sh),</td></tr></span>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> <span class="mrange">dw, dh,</td></tr></span>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> <span class="mrange">dw, w)</span>;</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> dimgScaleAARGBA(scaleinfo,</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> dimgScaleAARGB(scaleinfo,</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"><span class='comment'>// Code ported from Imlib2...</span></td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"><span class='comment'>// FIXME: replace with mRed, etc... These work on pointers to pixels, not</span></td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"><span class='comment'>// pixel values</span></td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL(p)<span class='expansion'>((unsigned char*)(p))[3]</span></span> ((unsigned char*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL(p)<span class='expansion'>((unsigned char*)(p))[2]</span></span> ((unsigned char*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL(p)<span class='expansion'>((unsigned char*)(p))[1]</span></span> ((unsigned char*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL(p)<span class='expansion'>((unsigned char*)(p))[0]</span></span> ((unsigned char*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"><span class='directive'>#define <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span> (256 - xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"><span class='directive'>#define <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> (xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"><span class='directive'>#define <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span> (256 - yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"><span class='directive'>#define <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> (yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line">uint** DImgScale::dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> uint** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> p = <span class='keyword'>new</span> uint* [dh+1];</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line">ullong** DImgScale::dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> ullong** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> p = <span class='keyword'>new</span> ullong*[(dh+1)];</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>return</span> p;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw)</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[dw+1];</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> inc = (((ullong)sw) &lt;&lt; 16) / dw;</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dw ; ++i)</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> p[j++] = (val &gt;&gt; 16);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up)</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[d];</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> <span class='comment'>/* scaling up */</span></td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='keyword'>if</span> (up)</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> p[j++] = (val &gt;&gt; 8) - ((val &gt;&gt; 8) &amp; 0xffffff00);</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> <span class='keyword'>if</span> ((<span class='keyword'>int</span>)(val &gt;&gt; 16) &gt;= (s - 1))</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> p[j - 1] = 0;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> <span class='comment'>/* scaling down */</span></td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='keyword'>int</span> ap, Cp;</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> Cp = ((d &lt;&lt; 14) / s) + 1;</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> ap = ((0x100 - ((val &gt;&gt; 8) &amp; 0xff)) * Cp) &gt;&gt; 8;</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> p[j] = ap | (Cp &lt;&lt; 16);</td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> ++j;</td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line">DImgScaleInfo* DImgScale::dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> <span class='keyword'>bool</span> <span class='comment'>/*sixteenBit*/</span>,</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> <span class='keyword'>bool</span> aa)</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> DImgScaleInfo* isi = <span class='keyword'>new</span> <span class="mrange"><span class="mrange">DImgScaleInfo</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Calling default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Returning from default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> <span class='keyword'>int</span> scw, sch;</td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> scw = dw * img.width() / sw;</td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> sch = dh * img.height() / sh;</td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> isi-&gt;xup_yup = (<span class="mrange">abs(dw) &gt;= sw</span>) + ((<span class="mrange">abs(dh) &gt;= sh</span>) &lt;&lt; 1);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:40ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> isi-&gt;xpoints = dimgCalcXPoints(img.width(), scw);</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">img.sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> isi-&gt;ypoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> isi-&gt;ypoints16 = dimgCalcYPoints16(<span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> isi-&gt;ypoints16 = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> isi-&gt;ypoints = dimgCalcYPoints(<span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='keyword'>if</span> (aa)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> isi-&gt;xapoints = dimgCalcApoints(img.width(), scw, isi-&gt;xup_yup &amp; 1);</td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> isi-&gt;yapoints = dimgCalcApoints(img.height(), sch, isi-&gt;xup_yup &amp; 2);</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> isi-&gt;xapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[scw];</td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; scw; ++i)</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> isi-&gt;xapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> isi-&gt;yapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[sch];</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; sch; ++i)</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> isi-&gt;yapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> <span class='keyword'>return</span> isi;</td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"><span class='comment'>/** scale by pixel sampling only */</span></td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> dimgSampleRGBA(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> dimgSampleRGBA16(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"><span class='comment'>/* FIXME: NEED to optimize ScaleAARGBA - currently its "ok" but needs work*/</span></td></tr>
<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"><span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"><span class='comment'>dimgScaleAARGBA : scale by area sampling. Arguments:</span></td></tr>
<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> <span class='comment'>DImgScaleInfo* isi, // scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='comment'>uint* dest, // destination img data</span></td></tr>
<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> <span class='comment'>int dxx, // destination x location corresponding to start x of src section</span></td></tr>
<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> <span class='comment'>int dyy, // destination y location corresponding to start y of src section</span></td></tr>
<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> <span class='comment'>int dw, // destination width</span></td></tr>
<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> <span class='comment'>int dh, // destination height</span></td></tr>
<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> <span class='comment'>int dow, // destination scanline width</span></td></tr>
<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> <span class='comment'>int sow); // src scanline width</span></td></tr>
<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> dimgScaleAARGBA(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> <span class='keyword'>int</span> rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line"> aa = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="719"><td class="num" id="LN719">719</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="720"><td class="num" id="LN720">720</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="721"><td class="num" id="LN721">721</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="722"><td class="num" id="LN722">722</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="723"><td class="num" id="LN723">723</td><td class="line"> aa += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="724"><td class="num" id="LN724">724</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="725"><td class="num" id="LN725">725</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="726"><td class="num" id="LN726">726</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="727"><td class="num" id="LN727">727</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="728"><td class="num" id="LN728">728</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="729"><td class="num" id="LN729">729</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="730"><td class="num" id="LN730">730</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="731"><td class="num" id="LN731">731</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="732"><td class="num" id="LN732">732</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="733"><td class="num" id="LN733">733</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="734"><td class="num" id="LN734">734</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="735"><td class="num" id="LN735">735</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="736"><td class="num" id="LN736">736</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="737"><td class="num" id="LN737">737</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="738"><td class="num" id="LN738">738</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="739"><td class="num" id="LN739">739</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="740"><td class="num" id="LN740">740</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="741"><td class="num" id="LN741">741</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="742"><td class="num" id="LN742">742</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="743"><td class="num" id="LN743">743</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="744"><td class="num" id="LN744">744</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="745"><td class="num" id="LN745">745</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="746"><td class="num" id="LN746">746</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="747"><td class="num" id="LN747">747</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="748"><td class="num" id="LN748">748</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="749"><td class="num" id="LN749">749</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="750"><td class="num" id="LN750">750</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="751"><td class="num" id="LN751">751</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="752"><td class="num" id="LN752">752</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="753"><td class="num" id="LN753">753</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="754"><td class="num" id="LN754">754</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="755"><td class="num" id="LN755">755</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="756"><td class="num" id="LN756">756</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="757"><td class="num" id="LN757">757</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="758"><td class="num" id="LN758">758</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="759"><td class="num" id="LN759">759</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="760"><td class="num" id="LN760">760</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="761"><td class="num" id="LN761">761</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="762"><td class="num" id="LN762">762</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="763"><td class="num" id="LN763">763</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="764"><td class="num" id="LN764">764</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="765"><td class="num" id="LN765">765</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="766"><td class="num" id="LN766">766</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="767"><td class="num" id="LN767">767</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="768"><td class="num" id="LN768">768</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="769"><td class="num" id="LN769">769</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="770"><td class="num" id="LN770">770</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="771"><td class="num" id="LN771">771</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="772"><td class="num" id="LN772">772</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="773"><td class="num" id="LN773">773</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="774"><td class="num" id="LN774">774</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="775"><td class="num" id="LN775">775</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="776"><td class="num" id="LN776">776</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="777"><td class="num" id="LN777">777</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="778"><td class="num" id="LN778">778</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="779"><td class="num" id="LN779">779</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="780"><td class="num" id="LN780">780</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="781"><td class="num" id="LN781">781</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="782"><td class="num" id="LN782">782</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="783"><td class="num" id="LN783">783</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="784"><td class="num" id="LN784">784</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="785"><td class="num" id="LN785">785</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="786"><td class="num" id="LN786">786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="787"><td class="num" id="LN787">787</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="788"><td class="num" id="LN788">788</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="789"><td class="num" id="LN789">789</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="790"><td class="num" id="LN790">790</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="791"><td class="num" id="LN791">791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="792"><td class="num" id="LN792">792</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="793"><td class="num" id="LN793">793</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="794"><td class="num" id="LN794">794</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="795"><td class="num" id="LN795">795</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="796"><td class="num" id="LN796">796</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="797"><td class="num" id="LN797">797</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="798"><td class="num" id="LN798">798</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="799"><td class="num" id="LN799">799</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="800"><td class="num" id="LN800">800</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="801"><td class="num" id="LN801">801</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="802"><td class="num" id="LN802">802</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="803"><td class="num" id="LN803">803</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="804"><td class="num" id="LN804">804</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="805"><td class="num" id="LN805">805</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="806"><td class="num" id="LN806">806</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="807"><td class="num" id="LN807">807</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="808"><td class="num" id="LN808">808</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="809"><td class="num" id="LN809">809</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="810"><td class="num" id="LN810">810</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="811"><td class="num" id="LN811">811</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="812"><td class="num" id="LN812">812</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="813"><td class="num" id="LN813">813</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="814"><td class="num" id="LN814">814</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="815"><td class="num" id="LN815">815</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="816"><td class="num" id="LN816">816</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="817"><td class="num" id="LN817">817</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="818"><td class="num" id="LN818">818</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="819"><td class="num" id="LN819">819</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="820"><td class="num" id="LN820">820</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="821"><td class="num" id="LN821">821</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="822"><td class="num" id="LN822">822</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="823"><td class="num" id="LN823">823</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="824"><td class="num" id="LN824">824</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="825"><td class="num" id="LN825">825</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="826"><td class="num" id="LN826">826</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="827"><td class="num" id="LN827">827</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="828"><td class="num" id="LN828">828</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="829"><td class="num" id="LN829">829</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="830"><td class="num" id="LN830">830</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="831"><td class="num" id="LN831">831</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="832"><td class="num" id="LN832">832</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="833"><td class="num" id="LN833">833</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="834"><td class="num" id="LN834">834</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="835"><td class="num" id="LN835">835</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="836"><td class="num" id="LN836">836</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="837"><td class="num" id="LN837">837</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="838"><td class="num" id="LN838">838</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="839"><td class="num" id="LN839">839</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="840"><td class="num" id="LN840">840</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="841"><td class="num" id="LN841">841</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="842"><td class="num" id="LN842">842</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="843"><td class="num" id="LN843">843</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="844"><td class="num" id="LN844">844</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="845"><td class="num" id="LN845">845</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="846"><td class="num" id="LN846">846</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="847"><td class="num" id="LN847">847</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="848"><td class="num" id="LN848">848</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="849"><td class="num" id="LN849">849</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="850"><td class="num" id="LN850">850</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="851"><td class="num" id="LN851">851</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="852"><td class="num" id="LN852">852</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="853"><td class="num" id="LN853">853</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="854"><td class="num" id="LN854">854</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="855"><td class="num" id="LN855">855</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="856"><td class="num" id="LN856">856</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="857"><td class="num" id="LN857">857</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="858"><td class="num" id="LN858">858</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="859"><td class="num" id="LN859">859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="860"><td class="num" id="LN860">860</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="861"><td class="num" id="LN861">861</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="862"><td class="num" id="LN862">862</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="863"><td class="num" id="LN863">863</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="864"><td class="num" id="LN864">864</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="865"><td class="num" id="LN865">865</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="866"><td class="num" id="LN866">866</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="867"><td class="num" id="LN867">867</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="868"><td class="num" id="LN868">868</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="869"><td class="num" id="LN869">869</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="870"><td class="num" id="LN870">870</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="871"><td class="num" id="LN871">871</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="872"><td class="num" id="LN872">872</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="873"><td class="num" id="LN873">873</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="874"><td class="num" id="LN874">874</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="875"><td class="num" id="LN875">875</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="876"><td class="num" id="LN876">876</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="877"><td class="num" id="LN877">877</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="878"><td class="num" id="LN878">878</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="879"><td class="num" id="LN879">879</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="880"><td class="num" id="LN880">880</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="881"><td class="num" id="LN881">881</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="882"><td class="num" id="LN882">882</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="883"><td class="num" id="LN883">883</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="884"><td class="num" id="LN884">884</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="885"><td class="num" id="LN885">885</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="886"><td class="num" id="LN886">886</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="887"><td class="num" id="LN887">887</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="888"><td class="num" id="LN888">888</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="889"><td class="num" id="LN889">889</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="890"><td class="num" id="LN890">890</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="891"><td class="num" id="LN891">891</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="892"><td class="num" id="LN892">892</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="893"><td class="num" id="LN893">893</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="894"><td class="num" id="LN894">894</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="895"><td class="num" id="LN895">895</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="896"><td class="num" id="LN896">896</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="897"><td class="num" id="LN897">897</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="898"><td class="num" id="LN898">898</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="899"><td class="num" id="LN899">899</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="900"><td class="num" id="LN900">900</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="901"><td class="num" id="LN901">901</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="902"><td class="num" id="LN902">902</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="903"><td class="num" id="LN903">903</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="904"><td class="num" id="LN904">904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="905"><td class="num" id="LN905">905</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="906"><td class="num" id="LN906">906</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="907"><td class="num" id="LN907">907</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="908"><td class="num" id="LN908">908</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="909"><td class="num" id="LN909">909</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="910"><td class="num" id="LN910">910</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="911"><td class="num" id="LN911">911</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="912"><td class="num" id="LN912">912</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="913"><td class="num" id="LN913">913</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="914"><td class="num" id="LN914">914</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="915"><td class="num" id="LN915">915</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="916"><td class="num" id="LN916">916</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="917"><td class="num" id="LN917">917</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="918"><td class="num" id="LN918">918</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="919"><td class="num" id="LN919">919</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="920"><td class="num" id="LN920">920</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="921"><td class="num" id="LN921">921</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="922"><td class="num" id="LN922">922</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="923"><td class="num" id="LN923">923</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="924"><td class="num" id="LN924">924</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="925"><td class="num" id="LN925">925</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="926"><td class="num" id="LN926">926</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="927"><td class="num" id="LN927">927</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="928"><td class="num" id="LN928">928</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="929"><td class="num" id="LN929">929</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="930"><td class="num" id="LN930">930</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="931"><td class="num" id="LN931">931</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="932"><td class="num" id="LN932">932</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="933"><td class="num" id="LN933">933</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="934"><td class="num" id="LN934">934</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="935"><td class="num" id="LN935">935</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="936"><td class="num" id="LN936">936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="937"><td class="num" id="LN937">937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="938"><td class="num" id="LN938">938</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="939"><td class="num" id="LN939">939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="940"><td class="num" id="LN940">940</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="941"><td class="num" id="LN941">941</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="942"><td class="num" id="LN942">942</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="943"><td class="num" id="LN943">943</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="944"><td class="num" id="LN944">944</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="945"><td class="num" id="LN945">945</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="946"><td class="num" id="LN946">946</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="947"><td class="num" id="LN947">947</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="948"><td class="num" id="LN948">948</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="949"><td class="num" id="LN949">949</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="950"><td class="num" id="LN950">950</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="951"><td class="num" id="LN951">951</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="952"><td class="num" id="LN952">952</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="953"><td class="num" id="LN953">953</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="954"><td class="num" id="LN954">954</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="955"><td class="num" id="LN955">955</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="956"><td class="num" id="LN956">956</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="957"><td class="num" id="LN957">957</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="958"><td class="num" id="LN958">958</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="959"><td class="num" id="LN959">959</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="960"><td class="num" id="LN960">960</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="961"><td class="num" id="LN961">961</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="962"><td class="num" id="LN962">962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="963"><td class="num" id="LN963">963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="964"><td class="num" id="LN964">964</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="965"><td class="num" id="LN965">965</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="966"><td class="num" id="LN966">966</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="967"><td class="num" id="LN967">967</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="968"><td class="num" id="LN968">968</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="969"><td class="num" id="LN969">969</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="970"><td class="num" id="LN970">970</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="971"><td class="num" id="LN971">971</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="972"><td class="num" id="LN972">972</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="973"><td class="num" id="LN973">973</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="974"><td class="num" id="LN974">974</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="975"><td class="num" id="LN975">975</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="976"><td class="num" id="LN976">976</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="977"><td class="num" id="LN977">977</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="978"><td class="num" id="LN978">978</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="979"><td class="num" id="LN979">979</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="980"><td class="num" id="LN980">980</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="981"><td class="num" id="LN981">981</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="982"><td class="num" id="LN982">982</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="983"><td class="num" id="LN983">983</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="984"><td class="num" id="LN984">984</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="985"><td class="num" id="LN985">985</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="986"><td class="num" id="LN986">986</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="987"><td class="num" id="LN987">987</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="988"><td class="num" id="LN988">988</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="989"><td class="num" id="LN989">989</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="990"><td class="num" id="LN990">990</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="991"><td class="num" id="LN991">991</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="992"><td class="num" id="LN992">992</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="993"><td class="num" id="LN993">993</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="994"><td class="num" id="LN994">994</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="995"><td class="num" id="LN995">995</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="996"><td class="num" id="LN996">996</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="997"><td class="num" id="LN997">997</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="998"><td class="num" id="LN998">998</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="999"><td class="num" id="LN999">999</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1000"><td class="num" id="LN1000">1000</td><td class="line"> <span class='keyword'>int</span> a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1001"><td class="num" id="LN1001">1001</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1002"><td class="num" id="LN1002">1002</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1003"><td class="num" id="LN1003">1003</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1004"><td class="num" id="LN1004">1004</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1005"><td class="num" id="LN1005">1005</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1006"><td class="num" id="LN1006">1006</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1007"><td class="num" id="LN1007">1007</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1008"><td class="num" id="LN1008">1008</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1009"><td class="num" id="LN1009">1009</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1010"><td class="num" id="LN1010">1010</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1011"><td class="num" id="LN1011">1011</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1012"><td class="num" id="LN1012">1012</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1013"><td class="num" id="LN1013">1013</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1014"><td class="num" id="LN1014">1014</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1015"><td class="num" id="LN1015">1015</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1016"><td class="num" id="LN1016">1016</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1017"><td class="num" id="LN1017">1017</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1018"><td class="num" id="LN1018">1018</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1019"><td class="num" id="LN1019">1019</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1020"><td class="num" id="LN1020">1020</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1021"><td class="num" id="LN1021">1021</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1022"><td class="num" id="LN1022">1022</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1023"><td class="num" id="LN1023">1023</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1024"><td class="num" id="LN1024">1024</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1025"><td class="num" id="LN1025">1025</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1026"><td class="num" id="LN1026">1026</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1027"><td class="num" id="LN1027">1027</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1028"><td class="num" id="LN1028">1028</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1029"><td class="num" id="LN1029">1029</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1030"><td class="num" id="LN1030">1030</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1031"><td class="num" id="LN1031">1031</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1032"><td class="num" id="LN1032">1032</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1033"><td class="num" id="LN1033">1033</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1034"><td class="num" id="LN1034">1034</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1035"><td class="num" id="LN1035">1035</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1036"><td class="num" id="LN1036">1036</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1037"><td class="num" id="LN1037">1037</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1038"><td class="num" id="LN1038">1038</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1039"><td class="num" id="LN1039">1039</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1040"><td class="num" id="LN1040">1040</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1041"><td class="num" id="LN1041">1041</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1042"><td class="num" id="LN1042">1042</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1043"><td class="num" id="LN1043">1043</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1044"><td class="num" id="LN1044">1044</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1045"><td class="num" id="LN1045">1045</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1046"><td class="num" id="LN1046">1046</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1047"><td class="num" id="LN1047">1047</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1048"><td class="num" id="LN1048">1048</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1049"><td class="num" id="LN1049">1049</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1050"><td class="num" id="LN1050">1050</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1051"><td class="num" id="LN1051">1051</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1052"><td class="num" id="LN1052">1052</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1053"><td class="num" id="LN1053">1053</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1054"><td class="num" id="LN1054">1054</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1055"><td class="num" id="LN1055">1055</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1056"><td class="num" id="LN1056">1056</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1057"><td class="num" id="LN1057">1057</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1058"><td class="num" id="LN1058">1058</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1059"><td class="num" id="LN1059">1059</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1060"><td class="num" id="LN1060">1060</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1061"><td class="num" id="LN1061">1061</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1062"><td class="num" id="LN1062">1062</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1063"><td class="num" id="LN1063">1063</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1064"><td class="num" id="LN1064">1064</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1065"><td class="num" id="LN1065">1065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1066"><td class="num" id="LN1066">1066</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1067"><td class="num" id="LN1067">1067</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1068"><td class="num" id="LN1068">1068</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1069"><td class="num" id="LN1069">1069</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1070"><td class="num" id="LN1070">1070</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1071"><td class="num" id="LN1071">1071</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1072"><td class="num" id="LN1072">1072</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1073"><td class="num" id="LN1073">1073</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1074"><td class="num" id="LN1074">1074</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1075"><td class="num" id="LN1075">1075</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1076"><td class="num" id="LN1076">1076</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1077"><td class="num" id="LN1077">1077</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1078"><td class="num" id="LN1078">1078</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1079"><td class="num" id="LN1079">1079</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1080"><td class="num" id="LN1080">1080</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1081"><td class="num" id="LN1081">1081</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1082"><td class="num" id="LN1082">1082</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1083"><td class="num" id="LN1083">1083</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1084"><td class="num" id="LN1084">1084</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1085"><td class="num" id="LN1085">1085</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1086"><td class="num" id="LN1086">1086</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1087"><td class="num" id="LN1087">1087</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1088"><td class="num" id="LN1088">1088</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1089"><td class="num" id="LN1089">1089</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1090"><td class="num" id="LN1090">1090</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1091"><td class="num" id="LN1091">1091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1092"><td class="num" id="LN1092">1092</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1093"><td class="num" id="LN1093">1093</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1094"><td class="num" id="LN1094">1094</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1095"><td class="num" id="LN1095">1095</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1096"><td class="num" id="LN1096">1096</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1097"><td class="num" id="LN1097">1097</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1098"><td class="num" id="LN1098">1098</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1099"><td class="num" id="LN1099">1099</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1100"><td class="num" id="LN1100">1100</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1101"><td class="num" id="LN1101">1101</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1102"><td class="num" id="LN1102">1102</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1103"><td class="num" id="LN1103">1103</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1104"><td class="num" id="LN1104">1104</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1105"><td class="num" id="LN1105">1105</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1106"><td class="num" id="LN1106">1106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1107"><td class="num" id="LN1107">1107</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1108"><td class="num" id="LN1108">1108</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1109"><td class="num" id="LN1109">1109</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1110"><td class="num" id="LN1110">1110</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1111"><td class="num" id="LN1111">1111</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1112"><td class="num" id="LN1112">1112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1113"><td class="num" id="LN1113">1113</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1114"><td class="num" id="LN1114">1114</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1115"><td class="num" id="LN1115">1115</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1116"><td class="num" id="LN1116">1116</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1117"><td class="num" id="LN1117">1117</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1118"><td class="num" id="LN1118">1118</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1119"><td class="num" id="LN1119">1119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1120"><td class="num" id="LN1120">1120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1121"><td class="num" id="LN1121">1121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1122"><td class="num" id="LN1122">1122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1123"><td class="num" id="LN1123">1123</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1124"><td class="num" id="LN1124">1124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1125"><td class="num" id="LN1125">1125</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1126"><td class="num" id="LN1126">1126</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1127"><td class="num" id="LN1127">1127</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1128"><td class="num" id="LN1128">1128</td><td class="line"> dimgScaleAARGB(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1129"><td class="num" id="LN1129">1129</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1130"><td class="num" id="LN1130">1130</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1131"><td class="num" id="LN1131">1131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1132"><td class="num" id="LN1132">1132</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte */</span></td></tr>
<tr class="codeline" data-linenumber="1133"><td class="num" id="LN1133">1133</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1134"><td class="num" id="LN1134">1134</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1135"><td class="num" id="LN1135">1135</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1136"><td class="num" id="LN1136">1136</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1137"><td class="num" id="LN1137">1137</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1138"><td class="num" id="LN1138">1138</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1139"><td class="num" id="LN1139">1139</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1140"><td class="num" id="LN1140">1140</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1141"><td class="num" id="LN1141">1141</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1142"><td class="num" id="LN1142">1142</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1143"><td class="num" id="LN1143">1143</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1144"><td class="num" id="LN1144">1144</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1145"><td class="num" id="LN1145">1145</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="1146"><td class="num" id="LN1146">1146</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1147"><td class="num" id="LN1147">1147</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1148"><td class="num" id="LN1148">1148</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1149"><td class="num" id="LN1149">1149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1150"><td class="num" id="LN1150">1150</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1151"><td class="num" id="LN1151">1151</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1152"><td class="num" id="LN1152">1152</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1153"><td class="num" id="LN1153">1153</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1154"><td class="num" id="LN1154">1154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1155"><td class="num" id="LN1155">1155</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="1156"><td class="num" id="LN1156">1156</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="1157"><td class="num" id="LN1157">1157</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1158"><td class="num" id="LN1158">1158</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1159"><td class="num" id="LN1159">1159</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1160"><td class="num" id="LN1160">1160</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1161"><td class="num" id="LN1161">1161</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="1162"><td class="num" id="LN1162">1162</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1163"><td class="num" id="LN1163">1163</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1164"><td class="num" id="LN1164">1164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1165"><td class="num" id="LN1165">1165</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1166"><td class="num" id="LN1166">1166</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1167"><td class="num" id="LN1167">1167</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1168"><td class="num" id="LN1168">1168</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1169"><td class="num" id="LN1169">1169</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1170"><td class="num" id="LN1170">1170</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1171"><td class="num" id="LN1171">1171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1172"><td class="num" id="LN1172">1172</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1173"><td class="num" id="LN1173">1173</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1174"><td class="num" id="LN1174">1174</td><td class="line"> <span class='keyword'>int</span> rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1175"><td class="num" id="LN1175">1175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1176"><td class="num" id="LN1176">1176</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1177"><td class="num" id="LN1177">1177</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1178"><td class="num" id="LN1178">1178</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1179"><td class="num" id="LN1179">1179</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1180"><td class="num" id="LN1180">1180</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1181"><td class="num" id="LN1181">1181</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1182"><td class="num" id="LN1182">1182</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1183"><td class="num" id="LN1183">1183</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1184"><td class="num" id="LN1184">1184</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1185"><td class="num" id="LN1185">1185</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1186"><td class="num" id="LN1186">1186</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1187"><td class="num" id="LN1187">1187</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1188"><td class="num" id="LN1188">1188</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1189"><td class="num" id="LN1189">1189</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1190"><td class="num" id="LN1190">1190</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1191"><td class="num" id="LN1191">1191</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1192"><td class="num" id="LN1192">1192</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1193"><td class="num" id="LN1193">1193</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1194"><td class="num" id="LN1194">1194</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1195"><td class="num" id="LN1195">1195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1196"><td class="num" id="LN1196">1196</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1197"><td class="num" id="LN1197">1197</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1198"><td class="num" id="LN1198">1198</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1199"><td class="num" id="LN1199">1199</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1200"><td class="num" id="LN1200">1200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1201"><td class="num" id="LN1201">1201</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1202"><td class="num" id="LN1202">1202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1203"><td class="num" id="LN1203">1203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1204"><td class="num" id="LN1204">1204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1205"><td class="num" id="LN1205">1205</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1206"><td class="num" id="LN1206">1206</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1207"><td class="num" id="LN1207">1207</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1208"><td class="num" id="LN1208">1208</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1209"><td class="num" id="LN1209">1209</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1210"><td class="num" id="LN1210">1210</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1211"><td class="num" id="LN1211">1211</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1212"><td class="num" id="LN1212">1212</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1213"><td class="num" id="LN1213">1213</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1214"><td class="num" id="LN1214">1214</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1215"><td class="num" id="LN1215">1215</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1216"><td class="num" id="LN1216">1216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1217"><td class="num" id="LN1217">1217</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1218"><td class="num" id="LN1218">1218</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1219"><td class="num" id="LN1219">1219</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1220"><td class="num" id="LN1220">1220</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1221"><td class="num" id="LN1221">1221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1222"><td class="num" id="LN1222">1222</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1223"><td class="num" id="LN1223">1223</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1224"><td class="num" id="LN1224">1224</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1225"><td class="num" id="LN1225">1225</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1226"><td class="num" id="LN1226">1226</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1227"><td class="num" id="LN1227">1227</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1228"><td class="num" id="LN1228">1228</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1229"><td class="num" id="LN1229">1229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1230"><td class="num" id="LN1230">1230</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1231"><td class="num" id="LN1231">1231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1232"><td class="num" id="LN1232">1232</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1233"><td class="num" id="LN1233">1233</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1234"><td class="num" id="LN1234">1234</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1235"><td class="num" id="LN1235">1235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1236"><td class="num" id="LN1236">1236</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1237"><td class="num" id="LN1237">1237</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1238"><td class="num" id="LN1238">1238</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1239"><td class="num" id="LN1239">1239</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1240"><td class="num" id="LN1240">1240</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1241"><td class="num" id="LN1241">1241</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1242"><td class="num" id="LN1242">1242</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1243"><td class="num" id="LN1243">1243</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1244"><td class="num" id="LN1244">1244</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1245"><td class="num" id="LN1245">1245</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1246"><td class="num" id="LN1246">1246</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1247"><td class="num" id="LN1247">1247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1248"><td class="num" id="LN1248">1248</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1249"><td class="num" id="LN1249">1249</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1250"><td class="num" id="LN1250">1250</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1251"><td class="num" id="LN1251">1251</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1252"><td class="num" id="LN1252">1252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1253"><td class="num" id="LN1253">1253</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1254"><td class="num" id="LN1254">1254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1255"><td class="num" id="LN1255">1255</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1256"><td class="num" id="LN1256">1256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1257"><td class="num" id="LN1257">1257</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1258"><td class="num" id="LN1258">1258</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1259"><td class="num" id="LN1259">1259</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1260"><td class="num" id="LN1260">1260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1261"><td class="num" id="LN1261">1261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1262"><td class="num" id="LN1262">1262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1263"><td class="num" id="LN1263">1263</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1264"><td class="num" id="LN1264">1264</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="1265"><td class="num" id="LN1265">1265</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1266"><td class="num" id="LN1266">1266</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1267"><td class="num" id="LN1267">1267</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1268"><td class="num" id="LN1268">1268</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1269"><td class="num" id="LN1269">1269</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1270"><td class="num" id="LN1270">1270</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1271"><td class="num" id="LN1271">1271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1272"><td class="num" id="LN1272">1272</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1273"><td class="num" id="LN1273">1273</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1274"><td class="num" id="LN1274">1274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1275"><td class="num" id="LN1275">1275</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1276"><td class="num" id="LN1276">1276</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1277"><td class="num" id="LN1277">1277</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1278"><td class="num" id="LN1278">1278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1279"><td class="num" id="LN1279">1279</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1280"><td class="num" id="LN1280">1280</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1281"><td class="num" id="LN1281">1281</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1282"><td class="num" id="LN1282">1282</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1283"><td class="num" id="LN1283">1283</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1284"><td class="num" id="LN1284">1284</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1285"><td class="num" id="LN1285">1285</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1286"><td class="num" id="LN1286">1286</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1287"><td class="num" id="LN1287">1287</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1288"><td class="num" id="LN1288">1288</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1289"><td class="num" id="LN1289">1289</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1290"><td class="num" id="LN1290">1290</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1291"><td class="num" id="LN1291">1291</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1292"><td class="num" id="LN1292">1292</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1293"><td class="num" id="LN1293">1293</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1294"><td class="num" id="LN1294">1294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1295"><td class="num" id="LN1295">1295</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1296"><td class="num" id="LN1296">1296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1297"><td class="num" id="LN1297">1297</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1298"><td class="num" id="LN1298">1298</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1299"><td class="num" id="LN1299">1299</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1300"><td class="num" id="LN1300">1300</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1301"><td class="num" id="LN1301">1301</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1302"><td class="num" id="LN1302">1302</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1303"><td class="num" id="LN1303">1303</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1304"><td class="num" id="LN1304">1304</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1305"><td class="num" id="LN1305">1305</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1306"><td class="num" id="LN1306">1306</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1307"><td class="num" id="LN1307">1307</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1308"><td class="num" id="LN1308">1308</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1309"><td class="num" id="LN1309">1309</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1310"><td class="num" id="LN1310">1310</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1311"><td class="num" id="LN1311">1311</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1312"><td class="num" id="LN1312">1312</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1313"><td class="num" id="LN1313">1313</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1314"><td class="num" id="LN1314">1314</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1315"><td class="num" id="LN1315">1315</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1316"><td class="num" id="LN1316">1316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1317"><td class="num" id="LN1317">1317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1318"><td class="num" id="LN1318">1318</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1319"><td class="num" id="LN1319">1319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1320"><td class="num" id="LN1320">1320</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1321"><td class="num" id="LN1321">1321</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1322"><td class="num" id="LN1322">1322</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1323"><td class="num" id="LN1323">1323</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1324"><td class="num" id="LN1324">1324</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1325"><td class="num" id="LN1325">1325</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1326"><td class="num" id="LN1326">1326</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1327"><td class="num" id="LN1327">1327</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1328"><td class="num" id="LN1328">1328</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1329"><td class="num" id="LN1329">1329</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1330"><td class="num" id="LN1330">1330</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1331"><td class="num" id="LN1331">1331</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1332"><td class="num" id="LN1332">1332</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1333"><td class="num" id="LN1333">1333</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1334"><td class="num" id="LN1334">1334</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1335"><td class="num" id="LN1335">1335</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1336"><td class="num" id="LN1336">1336</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1337"><td class="num" id="LN1337">1337</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1338"><td class="num" id="LN1338">1338</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1339"><td class="num" id="LN1339">1339</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1340"><td class="num" id="LN1340">1340</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1341"><td class="num" id="LN1341">1341</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1342"><td class="num" id="LN1342">1342</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1343"><td class="num" id="LN1343">1343</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1344"><td class="num" id="LN1344">1344</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1345"><td class="num" id="LN1345">1345</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1346"><td class="num" id="LN1346">1346</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1347"><td class="num" id="LN1347">1347</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1348"><td class="num" id="LN1348">1348</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="1349"><td class="num" id="LN1349">1349</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="1350"><td class="num" id="LN1350">1350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1351"><td class="num" id="LN1351">1351</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1352"><td class="num" id="LN1352">1352</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1353"><td class="num" id="LN1353">1353</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1354"><td class="num" id="LN1354">1354</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1355"><td class="num" id="LN1355">1355</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1356"><td class="num" id="LN1356">1356</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1357"><td class="num" id="LN1357">1357</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1358"><td class="num" id="LN1358">1358</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1359"><td class="num" id="LN1359">1359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1360"><td class="num" id="LN1360">1360</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1361"><td class="num" id="LN1361">1361</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1362"><td class="num" id="LN1362">1362</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1363"><td class="num" id="LN1363">1363</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1364"><td class="num" id="LN1364">1364</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1365"><td class="num" id="LN1365">1365</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1366"><td class="num" id="LN1366">1366</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1367"><td class="num" id="LN1367">1367</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1368"><td class="num" id="LN1368">1368</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1369"><td class="num" id="LN1369">1369</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1370"><td class="num" id="LN1370">1370</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1371"><td class="num" id="LN1371">1371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1372"><td class="num" id="LN1372">1372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1373"><td class="num" id="LN1373">1373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1374"><td class="num" id="LN1374">1374</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1375"><td class="num" id="LN1375">1375</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1376"><td class="num" id="LN1376">1376</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1377"><td class="num" id="LN1377">1377</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1378"><td class="num" id="LN1378">1378</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1379"><td class="num" id="LN1379">1379</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1380"><td class="num" id="LN1380">1380</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1381"><td class="num" id="LN1381">1381</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1382"><td class="num" id="LN1382">1382</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1383"><td class="num" id="LN1383">1383</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1384"><td class="num" id="LN1384">1384</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1385"><td class="num" id="LN1385">1385</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1386"><td class="num" id="LN1386">1386</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1387"><td class="num" id="LN1387">1387</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1388"><td class="num" id="LN1388">1388</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1389"><td class="num" id="LN1389">1389</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1390"><td class="num" id="LN1390">1390</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1391"><td class="num" id="LN1391">1391</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1392"><td class="num" id="LN1392">1392</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1393"><td class="num" id="LN1393">1393</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1394"><td class="num" id="LN1394">1394</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1395"><td class="num" id="LN1395">1395</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1396"><td class="num" id="LN1396">1396</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1397"><td class="num" id="LN1397">1397</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1398"><td class="num" id="LN1398">1398</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1399"><td class="num" id="LN1399">1399</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1400"><td class="num" id="LN1400">1400</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1401"><td class="num" id="LN1401">1401</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1402"><td class="num" id="LN1402">1402</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1403"><td class="num" id="LN1403">1403</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1404"><td class="num" id="LN1404">1404</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1405"><td class="num" id="LN1405">1405</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1406"><td class="num" id="LN1406">1406</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1407"><td class="num" id="LN1407">1407</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1408"><td class="num" id="LN1408">1408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1409"><td class="num" id="LN1409">1409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1410"><td class="num" id="LN1410">1410</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1411"><td class="num" id="LN1411">1411</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1412"><td class="num" id="LN1412">1412</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1413"><td class="num" id="LN1413">1413</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1414"><td class="num" id="LN1414">1414</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1415"><td class="num" id="LN1415">1415</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1416"><td class="num" id="LN1416">1416</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1417"><td class="num" id="LN1417">1417</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1418"><td class="num" id="LN1418">1418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1419"><td class="num" id="LN1419">1419</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1420"><td class="num" id="LN1420">1420</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1421"><td class="num" id="LN1421">1421</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1422"><td class="num" id="LN1422">1422</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1423"><td class="num" id="LN1423">1423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1424"><td class="num" id="LN1424">1424</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1425"><td class="num" id="LN1425">1425</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1426"><td class="num" id="LN1426">1426</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1427"><td class="num" id="LN1427">1427</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1428"><td class="num" id="LN1428">1428</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1429"><td class="num" id="LN1429">1429</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1430"><td class="num" id="LN1430">1430</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1431"><td class="num" id="LN1431">1431</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1432"><td class="num" id="LN1432">1432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1433"><td class="num" id="LN1433">1433</td><td class="line"> <span class='comment'>/* fully optimized (i think) - only change of algorithm can help */</span></td></tr>
<tr class="codeline" data-linenumber="1434"><td class="num" id="LN1434">1434</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1435"><td class="num" id="LN1435">1435</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1436"><td class="num" id="LN1436">1436</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1437"><td class="num" id="LN1437">1437</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1438"><td class="num" id="LN1438">1438</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1439"><td class="num" id="LN1439">1439</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1440"><td class="num" id="LN1440">1440</td><td class="line"> <span class='keyword'>int</span> r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1441"><td class="num" id="LN1441">1441</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1442"><td class="num" id="LN1442">1442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1443"><td class="num" id="LN1443">1443</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1444"><td class="num" id="LN1444">1444</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1445"><td class="num" id="LN1445">1445</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1446"><td class="num" id="LN1446">1446</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1447"><td class="num" id="LN1447">1447</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1448"><td class="num" id="LN1448">1448</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1449"><td class="num" id="LN1449">1449</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1450"><td class="num" id="LN1450">1450</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1451"><td class="num" id="LN1451">1451</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1452"><td class="num" id="LN1452">1452</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1453"><td class="num" id="LN1453">1453</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1454"><td class="num" id="LN1454">1454</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1455"><td class="num" id="LN1455">1455</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1456"><td class="num" id="LN1456">1456</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1457"><td class="num" id="LN1457">1457</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1458"><td class="num" id="LN1458">1458</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1459"><td class="num" id="LN1459">1459</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1460"><td class="num" id="LN1460">1460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1461"><td class="num" id="LN1461">1461</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1462"><td class="num" id="LN1462">1462</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1463"><td class="num" id="LN1463">1463</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1464"><td class="num" id="LN1464">1464</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1465"><td class="num" id="LN1465">1465</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1466"><td class="num" id="LN1466">1466</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1467"><td class="num" id="LN1467">1467</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1468"><td class="num" id="LN1468">1468</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1469"><td class="num" id="LN1469">1469</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1470"><td class="num" id="LN1470">1470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1471"><td class="num" id="LN1471">1471</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1472"><td class="num" id="LN1472">1472</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1473"><td class="num" id="LN1473">1473</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1474"><td class="num" id="LN1474">1474</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1475"><td class="num" id="LN1475">1475</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1476"><td class="num" id="LN1476">1476</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1477"><td class="num" id="LN1477">1477</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1478"><td class="num" id="LN1478">1478</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1479"><td class="num" id="LN1479">1479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1480"><td class="num" id="LN1480">1480</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1481"><td class="num" id="LN1481">1481</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1482"><td class="num" id="LN1482">1482</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1483"><td class="num" id="LN1483">1483</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1484"><td class="num" id="LN1484">1484</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1485"><td class="num" id="LN1485">1485</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1486"><td class="num" id="LN1486">1486</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1487"><td class="num" id="LN1487">1487</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1488"><td class="num" id="LN1488">1488</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1489"><td class="num" id="LN1489">1489</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1490"><td class="num" id="LN1490">1490</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1491"><td class="num" id="LN1491">1491</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1492"><td class="num" id="LN1492">1492</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1493"><td class="num" id="LN1493">1493</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1494"><td class="num" id="LN1494">1494</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1495"><td class="num" id="LN1495">1495</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1496"><td class="num" id="LN1496">1496</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1497"><td class="num" id="LN1497">1497</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1498"><td class="num" id="LN1498">1498</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1499"><td class="num" id="LN1499">1499</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1500"><td class="num" id="LN1500">1500</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1501"><td class="num" id="LN1501">1501</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1502"><td class="num" id="LN1502">1502</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1503"><td class="num" id="LN1503">1503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1504"><td class="num" id="LN1504">1504</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1505"><td class="num" id="LN1505">1505</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1506"><td class="num" id="LN1506">1506</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1507"><td class="num" id="LN1507">1507</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1508"><td class="num" id="LN1508">1508</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1509"><td class="num" id="LN1509">1509</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1510"><td class="num" id="LN1510">1510</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1511"><td class="num" id="LN1511">1511</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1512"><td class="num" id="LN1512">1512</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1513"><td class="num" id="LN1513">1513</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1514"><td class="num" id="LN1514">1514</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1515"><td class="num" id="LN1515">1515</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1516"><td class="num" id="LN1516">1516</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1517"><td class="num" id="LN1517">1517</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1518"><td class="num" id="LN1518">1518</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1519"><td class="num" id="LN1519">1519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1520"><td class="num" id="LN1520">1520</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1521"><td class="num" id="LN1521">1521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1522"><td class="num" id="LN1522">1522</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1523"><td class="num" id="LN1523">1523</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1524"><td class="num" id="LN1524">1524</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1525"><td class="num" id="LN1525">1525</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1526"><td class="num" id="LN1526">1526</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1527"><td class="num" id="LN1527">1527</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1528"><td class="num" id="LN1528">1528</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1529"><td class="num" id="LN1529">1529</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1530"><td class="num" id="LN1530">1530</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1531"><td class="num" id="LN1531">1531</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1532"><td class="num" id="LN1532">1532</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1533"><td class="num" id="LN1533">1533</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1534"><td class="num" id="LN1534">1534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1535"><td class="num" id="LN1535">1535</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1536"><td class="num" id="LN1536">1536</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1537"><td class="num" id="LN1537">1537</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1538"><td class="num" id="LN1538">1538</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1539"><td class="num" id="LN1539">1539</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1540"><td class="num" id="LN1540">1540</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1541"><td class="num" id="LN1541">1541</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1542"><td class="num" id="LN1542">1542</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1543"><td class="num" id="LN1543">1543</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1544"><td class="num" id="LN1544">1544</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1545"><td class="num" id="LN1545">1545</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1546"><td class="num" id="LN1546">1546</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1547"><td class="num" id="LN1547">1547</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1548"><td class="num" id="LN1548">1548</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1549"><td class="num" id="LN1549">1549</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1550"><td class="num" id="LN1550">1550</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL16(p)<span class='expansion'>((ushort*)(p))[3]</span></span> ((ushort*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="1551"><td class="num" id="LN1551">1551</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL16(p)<span class='expansion'>((ushort*)(p))[2]</span></span> ((ushort*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="1552"><td class="num" id="LN1552">1552</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL16(p)<span class='expansion'>((ushort*)(p))[1]</span></span> ((ushort*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="1553"><td class="num" id="LN1553">1553</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL16(p)<span class='expansion'>((ushort*)(p))[0]</span></span> ((ushort*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="1554"><td class="num" id="LN1554">1554</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1555"><td class="num" id="LN1555">1555</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1556"><td class="num" id="LN1556">1556</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1557"><td class="num" id="LN1557">1557</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1558"><td class="num" id="LN1558">1558</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1559"><td class="num" id="LN1559">1559</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1560"><td class="num" id="LN1560">1560</td><td class="line"> dimgScaleAARGB16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1561"><td class="num" id="LN1561">1561</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1562"><td class="num" id="LN1562">1562</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1563"><td class="num" id="LN1563">1563</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1564"><td class="num" id="LN1564">1564</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte*/</span></td></tr>
<tr class="codeline" data-linenumber="1565"><td class="num" id="LN1565">1565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1566"><td class="num" id="LN1566">1566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1567"><td class="num" id="LN1567">1567</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1568"><td class="num" id="LN1568">1568</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1569"><td class="num" id="LN1569">1569</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1570"><td class="num" id="LN1570">1570</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1571"><td class="num" id="LN1571">1571</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1572"><td class="num" id="LN1572">1572</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1573"><td class="num" id="LN1573">1573</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1574"><td class="num" id="LN1574">1574</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1575"><td class="num" id="LN1575">1575</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1576"><td class="num" id="LN1576">1576</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="1577"><td class="num" id="LN1577">1577</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1578"><td class="num" id="LN1578">1578</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1579"><td class="num" id="LN1579">1579</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1580"><td class="num" id="LN1580">1580</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1581"><td class="num" id="LN1581">1581</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1582"><td class="num" id="LN1582">1582</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1583"><td class="num" id="LN1583">1583</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1584"><td class="num" id="LN1584">1584</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1585"><td class="num" id="LN1585">1585</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1586"><td class="num" id="LN1586">1586</td><td class="line"> <span class='comment'>// scaling up both ways</span></td></tr>
<tr class="codeline" data-linenumber="1587"><td class="num" id="LN1587">1587</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="1588"><td class="num" id="LN1588">1588</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1589"><td class="num" id="LN1589">1589</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1590"><td class="num" id="LN1590">1590</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1591"><td class="num" id="LN1591">1591</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1592"><td class="num" id="LN1592">1592</td><td class="line"> <span class='comment'>// calculate the source line we'll scan from</span></td></tr>
<tr class="codeline" data-linenumber="1593"><td class="num" id="LN1593">1593</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1594"><td class="num" id="LN1594">1594</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1595"><td class="num" id="LN1595">1595</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1596"><td class="num" id="LN1596">1596</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1597"><td class="num" id="LN1597">1597</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1598"><td class="num" id="LN1598">1598</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1599"><td class="num" id="LN1599">1599</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1600"><td class="num" id="LN1600">1600</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1601"><td class="num" id="LN1601">1601</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1602"><td class="num" id="LN1602">1602</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1603"><td class="num" id="LN1603">1603</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1604"><td class="num" id="LN1604">1604</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1605"><td class="num" id="LN1605">1605</td><td class="line"> llong rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1606"><td class="num" id="LN1606">1606</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1607"><td class="num" id="LN1607">1607</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1608"><td class="num" id="LN1608">1608</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1609"><td class="num" id="LN1609">1609</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1610"><td class="num" id="LN1610">1610</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1611"><td class="num" id="LN1611">1611</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1612"><td class="num" id="LN1612">1612</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1613"><td class="num" id="LN1613">1613</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1614"><td class="num" id="LN1614">1614</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1615"><td class="num" id="LN1615">1615</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1616"><td class="num" id="LN1616">1616</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1617"><td class="num" id="LN1617">1617</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1618"><td class="num" id="LN1618">1618</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1619"><td class="num" id="LN1619">1619</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1620"><td class="num" id="LN1620">1620</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1621"><td class="num" id="LN1621">1621</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1622"><td class="num" id="LN1622">1622</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1623"><td class="num" id="LN1623">1623</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1624"><td class="num" id="LN1624">1624</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1625"><td class="num" id="LN1625">1625</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1626"><td class="num" id="LN1626">1626</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1627"><td class="num" id="LN1627">1627</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1628"><td class="num" id="LN1628">1628</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1629"><td class="num" id="LN1629">1629</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1630"><td class="num" id="LN1630">1630</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1631"><td class="num" id="LN1631">1631</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1632"><td class="num" id="LN1632">1632</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1633"><td class="num" id="LN1633">1633</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1634"><td class="num" id="LN1634">1634</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1635"><td class="num" id="LN1635">1635</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1636"><td class="num" id="LN1636">1636</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1637"><td class="num" id="LN1637">1637</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1638"><td class="num" id="LN1638">1638</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1639"><td class="num" id="LN1639">1639</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1640"><td class="num" id="LN1640">1640</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1641"><td class="num" id="LN1641">1641</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1642"><td class="num" id="LN1642">1642</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1643"><td class="num" id="LN1643">1643</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1644"><td class="num" id="LN1644">1644</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1645"><td class="num" id="LN1645">1645</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1646"><td class="num" id="LN1646">1646</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1647"><td class="num" id="LN1647">1647</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1648"><td class="num" id="LN1648">1648</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1649"><td class="num" id="LN1649">1649</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1650"><td class="num" id="LN1650">1650</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1651"><td class="num" id="LN1651">1651</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1652"><td class="num" id="LN1652">1652</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1653"><td class="num" id="LN1653">1653</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1654"><td class="num" id="LN1654">1654</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1655"><td class="num" id="LN1655">1655</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1656"><td class="num" id="LN1656">1656</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1657"><td class="num" id="LN1657">1657</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1658"><td class="num" id="LN1658">1658</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1659"><td class="num" id="LN1659">1659</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1660"><td class="num" id="LN1660">1660</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1661"><td class="num" id="LN1661">1661</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1662"><td class="num" id="LN1662">1662</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1663"><td class="num" id="LN1663">1663</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1664"><td class="num" id="LN1664">1664</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1665"><td class="num" id="LN1665">1665</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1666"><td class="num" id="LN1666">1666</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1667"><td class="num" id="LN1667">1667</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1668"><td class="num" id="LN1668">1668</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1669"><td class="num" id="LN1669">1669</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1670"><td class="num" id="LN1670">1670</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1671"><td class="num" id="LN1671">1671</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1672"><td class="num" id="LN1672">1672</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1673"><td class="num" id="LN1673">1673</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1674"><td class="num" id="LN1674">1674</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1675"><td class="num" id="LN1675">1675</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1676"><td class="num" id="LN1676">1676</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1677"><td class="num" id="LN1677">1677</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1678"><td class="num" id="LN1678">1678</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1679"><td class="num" id="LN1679">1679</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1680"><td class="num" id="LN1680">1680</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1681"><td class="num" id="LN1681">1681</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1682"><td class="num" id="LN1682">1682</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1683"><td class="num" id="LN1683">1683</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1684"><td class="num" id="LN1684">1684</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1685"><td class="num" id="LN1685">1685</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1686"><td class="num" id="LN1686">1686</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1687"><td class="num" id="LN1687">1687</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1688"><td class="num" id="LN1688">1688</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1689"><td class="num" id="LN1689">1689</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1690"><td class="num" id="LN1690">1690</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1691"><td class="num" id="LN1691">1691</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1692"><td class="num" id="LN1692">1692</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1693"><td class="num" id="LN1693">1693</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1694"><td class="num" id="LN1694">1694</td><td class="line"> <span class='comment'>// if we're scaling down vertically</span></td></tr>
<tr class="codeline" data-linenumber="1695"><td class="num" id="LN1695">1695</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="1696"><td class="num" id="LN1696">1696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1697"><td class="num" id="LN1697">1697</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1698"><td class="num" id="LN1698">1698</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1699"><td class="num" id="LN1699">1699</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1700"><td class="num" id="LN1700">1700</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1701"><td class="num" id="LN1701">1701</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1702"><td class="num" id="LN1702">1702</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1703"><td class="num" id="LN1703">1703</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1704"><td class="num" id="LN1704">1704</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1705"><td class="num" id="LN1705">1705</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1706"><td class="num" id="LN1706">1706</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1707"><td class="num" id="LN1707">1707</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1708"><td class="num" id="LN1708">1708</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1709"><td class="num" id="LN1709">1709</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1710"><td class="num" id="LN1710">1710</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1711"><td class="num" id="LN1711">1711</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1712"><td class="num" id="LN1712">1712</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1713"><td class="num" id="LN1713">1713</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1714"><td class="num" id="LN1714">1714</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1715"><td class="num" id="LN1715">1715</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1716"><td class="num" id="LN1716">1716</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1717"><td class="num" id="LN1717">1717</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1718"><td class="num" id="LN1718">1718</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1719"><td class="num" id="LN1719">1719</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1720"><td class="num" id="LN1720">1720</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1721"><td class="num" id="LN1721">1721</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1722"><td class="num" id="LN1722">1722</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1723"><td class="num" id="LN1723">1723</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1724"><td class="num" id="LN1724">1724</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1725"><td class="num" id="LN1725">1725</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1726"><td class="num" id="LN1726">1726</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1727"><td class="num" id="LN1727">1727</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1728"><td class="num" id="LN1728">1728</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1729"><td class="num" id="LN1729">1729</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1730"><td class="num" id="LN1730">1730</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1731"><td class="num" id="LN1731">1731</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1732"><td class="num" id="LN1732">1732</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1733"><td class="num" id="LN1733">1733</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1734"><td class="num" id="LN1734">1734</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1735"><td class="num" id="LN1735">1735</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1736"><td class="num" id="LN1736">1736</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1737"><td class="num" id="LN1737">1737</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1738"><td class="num" id="LN1738">1738</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1739"><td class="num" id="LN1739">1739</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1740"><td class="num" id="LN1740">1740</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1741"><td class="num" id="LN1741">1741</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1742"><td class="num" id="LN1742">1742</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1743"><td class="num" id="LN1743">1743</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1744"><td class="num" id="LN1744">1744</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1745"><td class="num" id="LN1745">1745</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1746"><td class="num" id="LN1746">1746</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1747"><td class="num" id="LN1747">1747</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1748"><td class="num" id="LN1748">1748</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1749"><td class="num" id="LN1749">1749</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1750"><td class="num" id="LN1750">1750</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1751"><td class="num" id="LN1751">1751</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1752"><td class="num" id="LN1752">1752</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1753"><td class="num" id="LN1753">1753</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1754"><td class="num" id="LN1754">1754</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1755"><td class="num" id="LN1755">1755</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1756"><td class="num" id="LN1756">1756</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1757"><td class="num" id="LN1757">1757</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1758"><td class="num" id="LN1758">1758</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1759"><td class="num" id="LN1759">1759</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1760"><td class="num" id="LN1760">1760</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1761"><td class="num" id="LN1761">1761</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1762"><td class="num" id="LN1762">1762</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1763"><td class="num" id="LN1763">1763</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1764"><td class="num" id="LN1764">1764</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1765"><td class="num" id="LN1765">1765</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1766"><td class="num" id="LN1766">1766</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1767"><td class="num" id="LN1767">1767</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1768"><td class="num" id="LN1768">1768</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1769"><td class="num" id="LN1769">1769</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1770"><td class="num" id="LN1770">1770</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1771"><td class="num" id="LN1771">1771</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1772"><td class="num" id="LN1772">1772</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1773"><td class="num" id="LN1773">1773</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1774"><td class="num" id="LN1774">1774</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1775"><td class="num" id="LN1775">1775</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1776"><td class="num" id="LN1776">1776</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1777"><td class="num" id="LN1777">1777</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1778"><td class="num" id="LN1778">1778</td><td class="line"> <span class='comment'>// if we're scaling down horizontally</span></td></tr>
<tr class="codeline" data-linenumber="1779"><td class="num" id="LN1779">1779</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="1780"><td class="num" id="LN1780">1780</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1781"><td class="num" id="LN1781">1781</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1782"><td class="num" id="LN1782">1782</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1783"><td class="num" id="LN1783">1783</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1784"><td class="num" id="LN1784">1784</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1785"><td class="num" id="LN1785">1785</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1786"><td class="num" id="LN1786">1786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1787"><td class="num" id="LN1787">1787</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1788"><td class="num" id="LN1788">1788</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1789"><td class="num" id="LN1789">1789</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1790"><td class="num" id="LN1790">1790</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1791"><td class="num" id="LN1791">1791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1792"><td class="num" id="LN1792">1792</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1793"><td class="num" id="LN1793">1793</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1794"><td class="num" id="LN1794">1794</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1795"><td class="num" id="LN1795">1795</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1796"><td class="num" id="LN1796">1796</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1797"><td class="num" id="LN1797">1797</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1798"><td class="num" id="LN1798">1798</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1799"><td class="num" id="LN1799">1799</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1800"><td class="num" id="LN1800">1800</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1801"><td class="num" id="LN1801">1801</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1802"><td class="num" id="LN1802">1802</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1803"><td class="num" id="LN1803">1803</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1804"><td class="num" id="LN1804">1804</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1805"><td class="num" id="LN1805">1805</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1806"><td class="num" id="LN1806">1806</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1807"><td class="num" id="LN1807">1807</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1808"><td class="num" id="LN1808">1808</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1809"><td class="num" id="LN1809">1809</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1810"><td class="num" id="LN1810">1810</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1811"><td class="num" id="LN1811">1811</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1812"><td class="num" id="LN1812">1812</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1813"><td class="num" id="LN1813">1813</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1814"><td class="num" id="LN1814">1814</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1815"><td class="num" id="LN1815">1815</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1816"><td class="num" id="LN1816">1816</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1817"><td class="num" id="LN1817">1817</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1818"><td class="num" id="LN1818">1818</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1819"><td class="num" id="LN1819">1819</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1820"><td class="num" id="LN1820">1820</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1821"><td class="num" id="LN1821">1821</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1822"><td class="num" id="LN1822">1822</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1823"><td class="num" id="LN1823">1823</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1824"><td class="num" id="LN1824">1824</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1825"><td class="num" id="LN1825">1825</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1826"><td class="num" id="LN1826">1826</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1827"><td class="num" id="LN1827">1827</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1828"><td class="num" id="LN1828">1828</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1829"><td class="num" id="LN1829">1829</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1830"><td class="num" id="LN1830">1830</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1831"><td class="num" id="LN1831">1831</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1832"><td class="num" id="LN1832">1832</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1833"><td class="num" id="LN1833">1833</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1834"><td class="num" id="LN1834">1834</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1835"><td class="num" id="LN1835">1835</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1836"><td class="num" id="LN1836">1836</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1837"><td class="num" id="LN1837">1837</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1838"><td class="num" id="LN1838">1838</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1839"><td class="num" id="LN1839">1839</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1840"><td class="num" id="LN1840">1840</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1841"><td class="num" id="LN1841">1841</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1842"><td class="num" id="LN1842">1842</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1843"><td class="num" id="LN1843">1843</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1844"><td class="num" id="LN1844">1844</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1845"><td class="num" id="LN1845">1845</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1846"><td class="num" id="LN1846">1846</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1847"><td class="num" id="LN1847">1847</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1848"><td class="num" id="LN1848">1848</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1849"><td class="num" id="LN1849">1849</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1850"><td class="num" id="LN1850">1850</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1851"><td class="num" id="LN1851">1851</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1852"><td class="num" id="LN1852">1852</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1853"><td class="num" id="LN1853">1853</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1854"><td class="num" id="LN1854">1854</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1855"><td class="num" id="LN1855">1855</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1856"><td class="num" id="LN1856">1856</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1857"><td class="num" id="LN1857">1857</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1858"><td class="num" id="LN1858">1858</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1859"><td class="num" id="LN1859">1859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1860"><td class="num" id="LN1860">1860</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1861"><td class="num" id="LN1861">1861</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1862"><td class="num" id="LN1862">1862</td><td class="line"> <span class='comment'>// fully optimized (i think) - only change of algorithm can help</span></td></tr>
<tr class="codeline" data-linenumber="1863"><td class="num" id="LN1863">1863</td><td class="line"> <span class='comment'>// if we're scaling down horizontally &amp; vertically</span></td></tr>
<tr class="codeline" data-linenumber="1864"><td class="num" id="LN1864">1864</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1865"><td class="num" id="LN1865">1865</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1866"><td class="num" id="LN1866">1866</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1867"><td class="num" id="LN1867">1867</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1868"><td class="num" id="LN1868">1868</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1869"><td class="num" id="LN1869">1869</td><td class="line"> llong r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1870"><td class="num" id="LN1870">1870</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1871"><td class="num" id="LN1871">1871</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1872"><td class="num" id="LN1872">1872</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1873"><td class="num" id="LN1873">1873</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1874"><td class="num" id="LN1874">1874</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1875"><td class="num" id="LN1875">1875</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1876"><td class="num" id="LN1876">1876</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1877"><td class="num" id="LN1877">1877</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1878"><td class="num" id="LN1878">1878</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1879"><td class="num" id="LN1879">1879</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1880"><td class="num" id="LN1880">1880</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1881"><td class="num" id="LN1881">1881</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1882"><td class="num" id="LN1882">1882</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1883"><td class="num" id="LN1883">1883</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1884"><td class="num" id="LN1884">1884</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1885"><td class="num" id="LN1885">1885</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1886"><td class="num" id="LN1886">1886</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1887"><td class="num" id="LN1887">1887</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1888"><td class="num" id="LN1888">1888</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1889"><td class="num" id="LN1889">1889</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1890"><td class="num" id="LN1890">1890</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1891"><td class="num" id="LN1891">1891</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1892"><td class="num" id="LN1892">1892</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1893"><td class="num" id="LN1893">1893</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1894"><td class="num" id="LN1894">1894</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1895"><td class="num" id="LN1895">1895</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1896"><td class="num" id="LN1896">1896</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1897"><td class="num" id="LN1897">1897</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1898"><td class="num" id="LN1898">1898</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1899"><td class="num" id="LN1899">1899</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1900"><td class="num" id="LN1900">1900</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1901"><td class="num" id="LN1901">1901</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1902"><td class="num" id="LN1902">1902</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1903"><td class="num" id="LN1903">1903</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1904"><td class="num" id="LN1904">1904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1905"><td class="num" id="LN1905">1905</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1906"><td class="num" id="LN1906">1906</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1907"><td class="num" id="LN1907">1907</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1908"><td class="num" id="LN1908">1908</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1909"><td class="num" id="LN1909">1909</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1910"><td class="num" id="LN1910">1910</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1911"><td class="num" id="LN1911">1911</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1912"><td class="num" id="LN1912">1912</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1913"><td class="num" id="LN1913">1913</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1914"><td class="num" id="LN1914">1914</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1915"><td class="num" id="LN1915">1915</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1916"><td class="num" id="LN1916">1916</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1917"><td class="num" id="LN1917">1917</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1918"><td class="num" id="LN1918">1918</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1919"><td class="num" id="LN1919">1919</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1920"><td class="num" id="LN1920">1920</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1921"><td class="num" id="LN1921">1921</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1922"><td class="num" id="LN1922">1922</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1923"><td class="num" id="LN1923">1923</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1924"><td class="num" id="LN1924">1924</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1925"><td class="num" id="LN1925">1925</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1926"><td class="num" id="LN1926">1926</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1927"><td class="num" id="LN1927">1927</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1928"><td class="num" id="LN1928">1928</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1929"><td class="num" id="LN1929">1929</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1930"><td class="num" id="LN1930">1930</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1931"><td class="num" id="LN1931">1931</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1932"><td class="num" id="LN1932">1932</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1933"><td class="num" id="LN1933">1933</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1934"><td class="num" id="LN1934">1934</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1935"><td class="num" id="LN1935">1935</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1936"><td class="num" id="LN1936">1936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1937"><td class="num" id="LN1937">1937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1938"><td class="num" id="LN1938">1938</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1939"><td class="num" id="LN1939">1939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1940"><td class="num" id="LN1940">1940</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1941"><td class="num" id="LN1941">1941</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1942"><td class="num" id="LN1942">1942</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1943"><td class="num" id="LN1943">1943</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1944"><td class="num" id="LN1944">1944</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1945"><td class="num" id="LN1945">1945</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1946"><td class="num" id="LN1946">1946</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1947"><td class="num" id="LN1947">1947</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1948"><td class="num" id="LN1948">1948</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1949"><td class="num" id="LN1949">1949</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1950"><td class="num" id="LN1950">1950</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1951"><td class="num" id="LN1951">1951</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1952"><td class="num" id="LN1952">1952</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1953"><td class="num" id="LN1953">1953</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1954"><td class="num" id="LN1954">1954</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1955"><td class="num" id="LN1955">1955</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1956"><td class="num" id="LN1956">1956</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1957"><td class="num" id="LN1957">1957</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1958"><td class="num" id="LN1958">1958</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1959"><td class="num" id="LN1959">1959</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1960"><td class="num" id="LN1960">1960</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1961"><td class="num" id="LN1961">1961</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1962"><td class="num" id="LN1962">1962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1963"><td class="num" id="LN1963">1963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1964"><td class="num" id="LN1964">1964</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1965"><td class="num" id="LN1965">1965</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1966"><td class="num" id="LN1966">1966</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1967"><td class="num" id="LN1967">1967</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1968"><td class="num" id="LN1968">1968</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1969"><td class="num" id="LN1969">1969</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1970"><td class="num" id="LN1970">1970</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1971"><td class="num" id="LN1971">1971</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1972"><td class="num" id="LN1972">1972</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1973"><td class="num" id="LN1973">1973</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1974"><td class="num" id="LN1974">1974</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1975"><td class="num" id="LN1975">1975</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1976"><td class="num" id="LN1976">1976</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1977"><td class="num" id="LN1977">1977</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1978"><td class="num" id="LN1978">1978</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1979"><td class="num" id="LN1979">1979</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1980"><td class="num" id="LN1980">1980</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1981"><td class="num" id="LN1981">1981</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1982"><td class="num" id="LN1982">1982</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow</td></tr>
<tr class="codeline" data-linenumber="1983"><td class="num" id="LN1983">1983</td><td class="line"> )</td></tr>
<tr class="codeline" data-linenumber="1984"><td class="num" id="LN1984">1984</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1985"><td class="num" id="LN1985">1985</td><td class="line"> <span class="mrange">dimgScaleAARGBA16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGBA16'</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1986"><td class="num" id="LN1986">1986</td><td class="line"> <span class="mrange">0, 0, dw, dh)</span>;</td></tr>
<tr class="codeline" data-linenumber="1987"><td class="num" id="LN1987">1987</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1988"><td class="num" id="LN1988">1988</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1989"><td class="num" id="LN1989">1989</td><td class="line"><span class='comment'>/* scale by area sampling */</span></td></tr>
<tr class="codeline" data-linenumber="1990"><td class="num" id="LN1990">1990</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1991"><td class="num" id="LN1991">1991</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1992"><td class="num" id="LN1992">1992</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1993"><td class="num" id="LN1993">1993</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1994"><td class="num" id="LN1994">1994</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1995"><td class="num" id="LN1995">1995</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1996"><td class="num" id="LN1996">1996</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1997"><td class="num" id="LN1997">1997</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1998"><td class="num" id="LN1998">1998</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1999"><td class="num" id="LN1999">1999</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2000"><td class="num" id="LN2000">2000</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2001"><td class="num" id="LN2001">2001</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="2002"><td class="num" id="LN2002">2002</td><td class="line"> <span class="mrange">ullong** ypoints</span> = isi-&gt;ypoints16;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>'ypoints' initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2003"><td class="num" id="LN2003">2003</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="2004"><td class="num" id="LN2004">2004</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="2005"><td class="num" id="LN2005">2005</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="2006"><td class="num" id="LN2006">2006</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2007"><td class="num" id="LN2007">2007</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="2008"><td class="num" id="LN2008">2008</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="2009"><td class="num" id="LN2009">2009</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="2010"><td class="num" id="LN2010">2010</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="2011"><td class="num" id="LN2011">2011</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2012"><td class="num" id="LN2012">2012</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="2013"><td class="num" id="LN2013">2013</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2014"><td class="num" id="LN2014">2014</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2015"><td class="num" id="LN2015">2015</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2016"><td class="num" id="LN2016">2016</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2017"><td class="num" id="LN2017">2017</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2018"><td class="num" id="LN2018">2018</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="2019"><td class="num" id="LN2019">2019</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2020"><td class="num" id="LN2020">2020</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="2021"><td class="num" id="LN2021">2021</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2022"><td class="num" id="LN2022">2022</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2023"><td class="num" id="LN2023">2023</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2024"><td class="num" id="LN2024">2024</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2025"><td class="num" id="LN2025">2025</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2026"><td class="num" id="LN2026">2026</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2027"><td class="num" id="LN2027">2027</td><td class="line"> llong rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2028"><td class="num" id="LN2028">2028</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2029"><td class="num" id="LN2029">2029</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2030"><td class="num" id="LN2030">2030</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2031"><td class="num" id="LN2031">2031</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2032"><td class="num" id="LN2032">2032</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2033"><td class="num" id="LN2033">2033</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2034"><td class="num" id="LN2034">2034</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2035"><td class="num" id="LN2035">2035</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2036"><td class="num" id="LN2036">2036</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2037"><td class="num" id="LN2037">2037</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2038"><td class="num" id="LN2038">2038</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2039"><td class="num" id="LN2039">2039</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2040"><td class="num" id="LN2040">2040</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2041"><td class="num" id="LN2041">2041</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2042"><td class="num" id="LN2042">2042</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2043"><td class="num" id="LN2043">2043</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2044"><td class="num" id="LN2044">2044</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2045"><td class="num" id="LN2045">2045</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2046"><td class="num" id="LN2046">2046</td><td class="line"> aa = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2047"><td class="num" id="LN2047">2047</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="2048"><td class="num" id="LN2048">2048</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2049"><td class="num" id="LN2049">2049</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2050"><td class="num" id="LN2050">2050</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2051"><td class="num" id="LN2051">2051</td><td class="line"> aa += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2052"><td class="num" id="LN2052">2052</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2053"><td class="num" id="LN2053">2053</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2054"><td class="num" id="LN2054">2054</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2055"><td class="num" id="LN2055">2055</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2056"><td class="num" id="LN2056">2056</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2057"><td class="num" id="LN2057">2057</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2058"><td class="num" id="LN2058">2058</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2059"><td class="num" id="LN2059">2059</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2060"><td class="num" id="LN2060">2060</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2061"><td class="num" id="LN2061">2061</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2062"><td class="num" id="LN2062">2062</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2063"><td class="num" id="LN2063">2063</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2064"><td class="num" id="LN2064">2064</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2065"><td class="num" id="LN2065">2065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2066"><td class="num" id="LN2066">2066</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2067"><td class="num" id="LN2067">2067</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2068"><td class="num" id="LN2068">2068</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2069"><td class="num" id="LN2069">2069</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2070"><td class="num" id="LN2070">2070</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2071"><td class="num" id="LN2071">2071</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2072"><td class="num" id="LN2072">2072</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2073"><td class="num" id="LN2073">2073</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2074"><td class="num" id="LN2074">2074</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2075"><td class="num" id="LN2075">2075</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2076"><td class="num" id="LN2076">2076</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2077"><td class="num" id="LN2077">2077</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2078"><td class="num" id="LN2078">2078</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2079"><td class="num" id="LN2079">2079</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2080"><td class="num" id="LN2080">2080</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2081"><td class="num" id="LN2081">2081</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2082"><td class="num" id="LN2082">2082</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2083"><td class="num" id="LN2083">2083</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2084"><td class="num" id="LN2084">2084</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2085"><td class="num" id="LN2085">2085</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2086"><td class="num" id="LN2086">2086</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2087"><td class="num" id="LN2087">2087</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2088"><td class="num" id="LN2088">2088</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2089"><td class="num" id="LN2089">2089</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2090"><td class="num" id="LN2090">2090</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2091"><td class="num" id="LN2091">2091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2092"><td class="num" id="LN2092">2092</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2093"><td class="num" id="LN2093">2093</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2094"><td class="num" id="LN2094">2094</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2095"><td class="num" id="LN2095">2095</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2096"><td class="num" id="LN2096">2096</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2097"><td class="num" id="LN2097">2097</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2098"><td class="num" id="LN2098">2098</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2099"><td class="num" id="LN2099">2099</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2100"><td class="num" id="LN2100">2100</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2101"><td class="num" id="LN2101">2101</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2102"><td class="num" id="LN2102">2102</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2103"><td class="num" id="LN2103">2103</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2104"><td class="num" id="LN2104">2104</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2105"><td class="num" id="LN2105">2105</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2106"><td class="num" id="LN2106">2106</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2107"><td class="num" id="LN2107">2107</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2108"><td class="num" id="LN2108">2108</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2109"><td class="num" id="LN2109">2109</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2110"><td class="num" id="LN2110">2110</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2111"><td class="num" id="LN2111">2111</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2112"><td class="num" id="LN2112">2112</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2113"><td class="num" id="LN2113">2113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2114"><td class="num" id="LN2114">2114</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2115"><td class="num" id="LN2115">2115</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2116"><td class="num" id="LN2116">2116</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2117"><td class="num" id="LN2117">2117</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2118"><td class="num" id="LN2118">2118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2119"><td class="num" id="LN2119">2119</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2120"><td class="num" id="LN2120">2120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2121"><td class="num" id="LN2121">2121</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2122"><td class="num" id="LN2122">2122</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2123"><td class="num" id="LN2123">2123</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="2124"><td class="num" id="LN2124">2124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2125"><td class="num" id="LN2125">2125</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2126"><td class="num" id="LN2126">2126</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2127"><td class="num" id="LN2127">2127</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2128"><td class="num" id="LN2128">2128</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2129"><td class="num" id="LN2129">2129</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2130"><td class="num" id="LN2130">2130</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2131"><td class="num" id="LN2131">2131</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2132"><td class="num" id="LN2132">2132</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2133"><td class="num" id="LN2133">2133</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="2134"><td class="num" id="LN2134">2134</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2135"><td class="num" id="LN2135">2135</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2136"><td class="num" id="LN2136">2136</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="2137"><td class="num" id="LN2137">2137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2138"><td class="num" id="LN2138">2138</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2139"><td class="num" id="LN2139">2139</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2140"><td class="num" id="LN2140">2140</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2141"><td class="num" id="LN2141">2141</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2142"><td class="num" id="LN2142">2142</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2143"><td class="num" id="LN2143">2143</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2144"><td class="num" id="LN2144">2144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2145"><td class="num" id="LN2145">2145</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2146"><td class="num" id="LN2146">2146</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2147"><td class="num" id="LN2147">2147</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2148"><td class="num" id="LN2148">2148</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2149"><td class="num" id="LN2149">2149</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2150"><td class="num" id="LN2150">2150</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2151"><td class="num" id="LN2151">2151</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2152"><td class="num" id="LN2152">2152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2153"><td class="num" id="LN2153">2153</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2154"><td class="num" id="LN2154">2154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2155"><td class="num" id="LN2155">2155</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2156"><td class="num" id="LN2156">2156</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2157"><td class="num" id="LN2157">2157</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2158"><td class="num" id="LN2158">2158</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2159"><td class="num" id="LN2159">2159</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2160"><td class="num" id="LN2160">2160</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2161"><td class="num" id="LN2161">2161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2162"><td class="num" id="LN2162">2162</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2163"><td class="num" id="LN2163">2163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2164"><td class="num" id="LN2164">2164</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2165"><td class="num" id="LN2165">2165</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2166"><td class="num" id="LN2166">2166</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2167"><td class="num" id="LN2167">2167</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2168"><td class="num" id="LN2168">2168</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2169"><td class="num" id="LN2169">2169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2170"><td class="num" id="LN2170">2170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2171"><td class="num" id="LN2171">2171</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2172"><td class="num" id="LN2172">2172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2173"><td class="num" id="LN2173">2173</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="2174"><td class="num" id="LN2174">2174</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2175"><td class="num" id="LN2175">2175</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2176"><td class="num" id="LN2176">2176</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2177"><td class="num" id="LN2177">2177</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2178"><td class="num" id="LN2178">2178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2179"><td class="num" id="LN2179">2179</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2180"><td class="num" id="LN2180">2180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2181"><td class="num" id="LN2181">2181</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2182"><td class="num" id="LN2182">2182</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2183"><td class="num" id="LN2183">2183</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2184"><td class="num" id="LN2184">2184</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2185"><td class="num" id="LN2185">2185</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2186"><td class="num" id="LN2186">2186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2187"><td class="num" id="LN2187">2187</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2188"><td class="num" id="LN2188">2188</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2189"><td class="num" id="LN2189">2189</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2190"><td class="num" id="LN2190">2190</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2191"><td class="num" id="LN2191">2191</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2192"><td class="num" id="LN2192">2192</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2193"><td class="num" id="LN2193">2193</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2194"><td class="num" id="LN2194">2194</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2195"><td class="num" id="LN2195">2195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2196"><td class="num" id="LN2196">2196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2197"><td class="num" id="LN2197">2197</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2198"><td class="num" id="LN2198">2198</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2199"><td class="num" id="LN2199">2199</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2200"><td class="num" id="LN2200">2200</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2201"><td class="num" id="LN2201">2201</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2202"><td class="num" id="LN2202">2202</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2203"><td class="num" id="LN2203">2203</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2204"><td class="num" id="LN2204">2204</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2205"><td class="num" id="LN2205">2205</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2206"><td class="num" id="LN2206">2206</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2207"><td class="num" id="LN2207">2207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2208"><td class="num" id="LN2208">2208</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2209"><td class="num" id="LN2209">2209</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2210"><td class="num" id="LN2210">2210</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2211"><td class="num" id="LN2211">2211</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2212"><td class="num" id="LN2212">2212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2213"><td class="num" id="LN2213">2213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2214"><td class="num" id="LN2214">2214</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2215"><td class="num" id="LN2215">2215</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2216"><td class="num" id="LN2216">2216</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2217"><td class="num" id="LN2217">2217</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2218"><td class="num" id="LN2218">2218</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2219"><td class="num" id="LN2219">2219</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2220"><td class="num" id="LN2220">2220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2221"><td class="num" id="LN2221">2221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2222"><td class="num" id="LN2222">2222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2223"><td class="num" id="LN2223">2223</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="2224"><td class="num" id="LN2224">2224</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2225"><td class="num" id="LN2225">2225</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2226"><td class="num" id="LN2226">2226</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2227"><td class="num" id="LN2227">2227</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="2228"><td class="num" id="LN2228">2228</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2229"><td class="num" id="LN2229">2229</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2230"><td class="num" id="LN2230">2230</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="2231"><td class="num" id="LN2231">2231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2232"><td class="num" id="LN2232">2232</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2233"><td class="num" id="LN2233">2233</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2234"><td class="num" id="LN2234">2234</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2235"><td class="num" id="LN2235">2235</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2236"><td class="num" id="LN2236">2236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2237"><td class="num" id="LN2237">2237</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2238"><td class="num" id="LN2238">2238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2239"><td class="num" id="LN2239">2239</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2240"><td class="num" id="LN2240">2240</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2241"><td class="num" id="LN2241">2241</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2242"><td class="num" id="LN2242">2242</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2243"><td class="num" id="LN2243">2243</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2244"><td class="num" id="LN2244">2244</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2245"><td class="num" id="LN2245">2245</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2246"><td class="num" id="LN2246">2246</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2247"><td class="num" id="LN2247">2247</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2248"><td class="num" id="LN2248">2248</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2249"><td class="num" id="LN2249">2249</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2250"><td class="num" id="LN2250">2250</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2251"><td class="num" id="LN2251">2251</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2252"><td class="num" id="LN2252">2252</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2253"><td class="num" id="LN2253">2253</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2254"><td class="num" id="LN2254">2254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2255"><td class="num" id="LN2255">2255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2256"><td class="num" id="LN2256">2256</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2257"><td class="num" id="LN2257">2257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2258"><td class="num" id="LN2258">2258</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2259"><td class="num" id="LN2259">2259</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2260"><td class="num" id="LN2260">2260</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2261"><td class="num" id="LN2261">2261</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2262"><td class="num" id="LN2262">2262</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2263"><td class="num" id="LN2263">2263</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2264"><td class="num" id="LN2264">2264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2265"><td class="num" id="LN2265">2265</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2266"><td class="num" id="LN2266">2266</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2267"><td class="num" id="LN2267">2267</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="2268"><td class="num" id="LN2268">2268</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2269"><td class="num" id="LN2269">2269</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2270"><td class="num" id="LN2270">2270</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2271"><td class="num" id="LN2271">2271</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2272"><td class="num" id="LN2272">2272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2273"><td class="num" id="LN2273">2273</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2274"><td class="num" id="LN2274">2274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2275"><td class="num" id="LN2275">2275</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2276"><td class="num" id="LN2276">2276</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2277"><td class="num" id="LN2277">2277</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2278"><td class="num" id="LN2278">2278</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2279"><td class="num" id="LN2279">2279</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2280"><td class="num" id="LN2280">2280</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2281"><td class="num" id="LN2281">2281</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2282"><td class="num" id="LN2282">2282</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2283"><td class="num" id="LN2283">2283</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2284"><td class="num" id="LN2284">2284</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2285"><td class="num" id="LN2285">2285</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2286"><td class="num" id="LN2286">2286</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2287"><td class="num" id="LN2287">2287</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2288"><td class="num" id="LN2288">2288</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2289"><td class="num" id="LN2289">2289</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2290"><td class="num" id="LN2290">2290</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2291"><td class="num" id="LN2291">2291</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2292"><td class="num" id="LN2292">2292</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2293"><td class="num" id="LN2293">2293</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2294"><td class="num" id="LN2294">2294</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2295"><td class="num" id="LN2295">2295</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2296"><td class="num" id="LN2296">2296</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2297"><td class="num" id="LN2297">2297</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2298"><td class="num" id="LN2298">2298</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2299"><td class="num" id="LN2299">2299</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2300"><td class="num" id="LN2300">2300</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2301"><td class="num" id="LN2301">2301</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2302"><td class="num" id="LN2302">2302</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2303"><td class="num" id="LN2303">2303</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2304"><td class="num" id="LN2304">2304</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2305"><td class="num" id="LN2305">2305</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2306"><td class="num" id="LN2306">2306</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2307"><td class="num" id="LN2307">2307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2308"><td class="num" id="LN2308">2308</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2309"><td class="num" id="LN2309">2309</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2310"><td class="num" id="LN2310">2310</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2311"><td class="num" id="LN2311">2311</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2312"><td class="num" id="LN2312">2312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2313"><td class="num" id="LN2313">2313</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2314"><td class="num" id="LN2314">2314</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2315"><td class="num" id="LN2315">2315</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2316"><td class="num" id="LN2316">2316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2317"><td class="num" id="LN2317">2317</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2318"><td class="num" id="LN2318">2318</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2319"><td class="num" id="LN2319">2319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2320"><td class="num" id="LN2320">2320</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="2321"><td class="num" id="LN2321">2321</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="2322"><td class="num" id="LN2322">2322</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="2323"><td class="num" id="LN2323">2323</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="2324"><td class="num" id="LN2324">2324</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="2325"><td class="num" id="LN2325">2325</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="2326"><td class="num" id="LN2326">2326</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2327"><td class="num" id="LN2327">2327</td><td class="line"> llong a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="2328"><td class="num" id="LN2328">2328</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="2329"><td class="num" id="LN2329">2329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2330"><td class="num" id="LN2330">2330</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2331"><td class="num" id="LN2331">2331</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2332"><td class="num" id="LN2332">2332</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2333"><td class="num" id="LN2333">2333</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2334"><td class="num" id="LN2334">2334</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2335"><td class="num" id="LN2335">2335</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2336"><td class="num" id="LN2336">2336</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; <span class="mrange">x &lt; x_end</span>; ++x)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgEvent" style="margin-left:31ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Assuming 'x' is &lt; 'x_end'</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#EndPath" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2337"><td class="num" id="LN2337">2337</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2338"><td class="num" id="LN2338">2338</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2339"><td class="num" id="LN2339">2339</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2340"><td class="num" id="LN2340">2340</td><td class="line"> sptr = <span class="mrange">ypoints</span>[dyy + y] + xpoints[x];</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:24ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Array access (from variable 'ypoints') results in a null pointer dereference</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="2341"><td class="num" id="LN2341">2341</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2342"><td class="num" id="LN2342">2342</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2343"><td class="num" id="LN2343">2343</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2344"><td class="num" id="LN2344">2344</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2345"><td class="num" id="LN2345">2345</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2346"><td class="num" id="LN2346">2346</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2347"><td class="num" id="LN2347">2347</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2348"><td class="num" id="LN2348">2348</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2349"><td class="num" id="LN2349">2349</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2350"><td class="num" id="LN2350">2350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2351"><td class="num" id="LN2351">2351</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2352"><td class="num" id="LN2352">2352</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2353"><td class="num" id="LN2353">2353</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2354"><td class="num" id="LN2354">2354</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2355"><td class="num" id="LN2355">2355</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2356"><td class="num" id="LN2356">2356</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2357"><td class="num" id="LN2357">2357</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2358"><td class="num" id="LN2358">2358</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2359"><td class="num" id="LN2359">2359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2360"><td class="num" id="LN2360">2360</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2361"><td class="num" id="LN2361">2361</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2362"><td class="num" id="LN2362">2362</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2363"><td class="num" id="LN2363">2363</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2364"><td class="num" id="LN2364">2364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2365"><td class="num" id="LN2365">2365</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2366"><td class="num" id="LN2366">2366</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2367"><td class="num" id="LN2367">2367</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2368"><td class="num" id="LN2368">2368</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2369"><td class="num" id="LN2369">2369</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2370"><td class="num" id="LN2370">2370</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2371"><td class="num" id="LN2371">2371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2372"><td class="num" id="LN2372">2372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2373"><td class="num" id="LN2373">2373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2374"><td class="num" id="LN2374">2374</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2375"><td class="num" id="LN2375">2375</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2376"><td class="num" id="LN2376">2376</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2377"><td class="num" id="LN2377">2377</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2378"><td class="num" id="LN2378">2378</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2379"><td class="num" id="LN2379">2379</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2380"><td class="num" id="LN2380">2380</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2381"><td class="num" id="LN2381">2381</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2382"><td class="num" id="LN2382">2382</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2383"><td class="num" id="LN2383">2383</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2384"><td class="num" id="LN2384">2384</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2385"><td class="num" id="LN2385">2385</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2386"><td class="num" id="LN2386">2386</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2387"><td class="num" id="LN2387">2387</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2388"><td class="num" id="LN2388">2388</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2389"><td class="num" id="LN2389">2389</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2390"><td class="num" id="LN2390">2390</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2391"><td class="num" id="LN2391">2391</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2392"><td class="num" id="LN2392">2392</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2393"><td class="num" id="LN2393">2393</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2394"><td class="num" id="LN2394">2394</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2395"><td class="num" id="LN2395">2395</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2396"><td class="num" id="LN2396">2396</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2397"><td class="num" id="LN2397">2397</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2398"><td class="num" id="LN2398">2398</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2399"><td class="num" id="LN2399">2399</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2400"><td class="num" id="LN2400">2400</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2401"><td class="num" id="LN2401">2401</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2402"><td class="num" id="LN2402">2402</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2403"><td class="num" id="LN2403">2403</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2404"><td class="num" id="LN2404">2404</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2405"><td class="num" id="LN2405">2405</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2406"><td class="num" id="LN2406">2406</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2407"><td class="num" id="LN2407">2407</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2408"><td class="num" id="LN2408">2408</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2409"><td class="num" id="LN2409">2409</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="2410"><td class="num" id="LN2410">2410</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2411"><td class="num" id="LN2411">2411</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2412"><td class="num" id="LN2412">2412</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2413"><td class="num" id="LN2413">2413</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2414"><td class="num" id="LN2414">2414</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2415"><td class="num" id="LN2415">2415</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2416"><td class="num" id="LN2416">2416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2417"><td class="num" id="LN2417">2417</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2418"><td class="num" id="LN2418">2418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2419"><td class="num" id="LN2419">2419</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2420"><td class="num" id="LN2420">2420</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2421"><td class="num" id="LN2421">2421</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2422"><td class="num" id="LN2422">2422</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2423"><td class="num" id="LN2423">2423</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2424"><td class="num" id="LN2424">2424</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2425"><td class="num" id="LN2425">2425</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2426"><td class="num" id="LN2426">2426</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2427"><td class="num" id="LN2427">2427</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2428"><td class="num" id="LN2428">2428</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2429"><td class="num" id="LN2429">2429</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2430"><td class="num" id="LN2430">2430</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2431"><td class="num" id="LN2431">2431</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2432"><td class="num" id="LN2432">2432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2433"><td class="num" id="LN2433">2433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2434"><td class="num" id="LN2434">2434</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2435"><td class="num" id="LN2435">2435</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2436"><td class="num" id="LN2436">2436</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2437"><td class="num" id="LN2437">2437</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2438"><td class="num" id="LN2438">2438</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2439"><td class="num" id="LN2439">2439</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2440"><td class="num" id="LN2440">2440</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2441"><td class="num" id="LN2441">2441</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2442"><td class="num" id="LN2442">2442</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2443"><td class="num" id="LN2443">2443</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2444"><td class="num" id="LN2444">2444</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2445"><td class="num" id="LN2445">2445</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2446"><td class="num" id="LN2446">2446</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2447"><td class="num" id="LN2447">2447</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2448"><td class="num" id="LN2448">2448</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="2449"><td class="num" id="LN2449">2449</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2450"><td class="num" id="LN2450">2450</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-4ca9c9.html b/static/reports/clang/master/report-55268a.html
similarity index 99%
rename from static/reports/clang/master/report-4ca9c9.html
rename to static/reports/clang/master/report-55268a.html
index 2a6df3c5c..9a61220e0 100644
--- a/static/reports/clang/master/report-4ca9c9.html
+++ b/static/reports/clang/master/report-55268a.html
@@ -1,882 +1,882 @@
<!doctype html>
<html>
<head>
<title>/usr/lib64/qt5/include/QtCore/qscopedpointer.h</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete' -->
<!-- BUGTYPE Bad deallocator -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /usr/lib64/qt5/include/QtCore/qscopedpointer.h -->
<!-- FILENAME qscopedpointer.h -->
<!-- FUNCTIONNAME cleanup -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 445fcf0bbbad937978727202b292e576 -->
<!-- BUGLINE 60 -->
<!-- BUGCOLUMN 9 -->
<!-- BUGPATHLENGTH 5 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>usr/lib64/qt5/include/QtCore/qscopedpointer.h</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 60, column 9</a><br />Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp -faddrsig
+<div class="spoiler">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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"96": 1, "97": 1, "98": 1, "99": 1, "100": 1, "101": 1, "103": 1, "104": 1, "105": 1, "106": 1, "108": 1, "109": 1, "111": 1, "112": 1, "113": 1, "115": 1, "136": 1}, "17019": {"52": 1, "53": 1, "58": 1, "60": 1, "100": 1, "101": 1, "104": 1, "105": 1, "106": 1, "107": 1, "138": 1, "139": 1, "140": 1}, "19323": {"48": 1, "49": 1, "50": 1, "51": 1, "52": 1, "53": 1, "54": 1, "140": 1, "141": 1, "142": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<div id=File1>
<h4 class=FileName>/mnt/devel/GIT/6.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp</h4>
<div class=FileNav><a href="#File17019">&#x2192;</a></div></div>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-05-25</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Oil Painting threaded image filter.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2010 by Marcel Wiesweg &lt;marcel dot wiesweg at gmx dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2010 by Martin Klapetek &lt;martin dot klapetek at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Original OilPaint algorithm copyrighted 2004 by</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Pieter Z. Voloshyn &lt;pieter dot voloshyn at gmail dot com&gt;.</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include "oilpaintfilter.h"</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;cmath&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;cstdlib&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include &lt;QtConcurrent&gt; // krazy:exclude=includes</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> OilPaintFilter::Private</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> : brushSize(1),</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> smoothness(30),</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> globalProgress(0)</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> <span class='keyword'>int</span> brushSize;</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>int</span> smoothness;</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> <span class='keyword'>int</span> globalProgress;</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> QMutex lock;</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line">OilPaintFilter::OilPaintFilter(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> : DImgThreadedFilter(parent),</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> initFilter();</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line">OilPaintFilter::OilPaintFilter(DImg* <span class='keyword'>const</span> orgImage, QObject* <span class='keyword'>const</span> parent, <span class='keyword'>int</span> brushSize, <span class='keyword'>int</span> smoothness)</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> : DImgThreadedFilter(orgImage, parent, QLatin1String(<span class='string_literal'>"OilPaintFilter"</span>)),</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> d-&gt;brushSize = brushSize;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d-&gt;smoothness = smoothness;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> initFilter();</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line">OilPaintFilter::~OilPaintFilter()</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> cancelFilter();</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='comment'>/** Function to apply the OilPaintFilter effect.</span></td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='comment'>* This method have been ported from Pieter Z. Voloshyn algorithm code.</span></td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='comment'>* Theory: Using MostFrequentColor function we take the main color in</span></td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class='comment'>* a matrix and simply write at the original position.</span></td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"><span class='keyword'>void</span> OilPaintFilter::oilPaintImageMultithreaded(uint start, uint stop)</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> QScopedPointer&lt;uchar&gt; intensityCount(<span class='keyword'>new</span> uchar[d-&gt;smoothness + 1]);</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> QScopedPointer&lt;uint&gt; averageColorR(<span class='keyword'>new</span> uint[d-&gt;smoothness + 1]);</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> QScopedPointer&lt;uint&gt; averageColorG(<span class='keyword'>new</span> uint[d-&gt;smoothness + 1]);</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> QScopedPointer&lt;uint&gt; averageColorB(<span class="mrange"><span class='keyword'>new</span> uint[d-&gt;smoothness + 1]</span>);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:41ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> memset(intensityCount.data(), 0, <span class='keyword'>sizeof</span>(uchar)*(d-&gt;smoothness + 1));</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> memset(averageColorR.data(), 0, <span class='keyword'>sizeof</span>(uint)*(d-&gt;smoothness + 1));</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> memset(averageColorG.data(), 0, <span class='keyword'>sizeof</span>(uint)*(d-&gt;smoothness + 1));</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> memset(averageColorB.data(), 0, <span class='keyword'>sizeof</span>(uint)*(d-&gt;smoothness + 1));</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>int</span> oldProgress=0, progress=0;</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> DColor mostFrequentColor;</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> mostFrequentColor.setSixteenBit(m_orgImage.sixteenBit());</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> uchar* dest = m_destImage.bits();</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> uchar* dptr = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='keyword'>for</span> (uint h2 = start; <span class="mrange">runningFlag()</span> &amp;&amp; (h2 &lt; stop); ++h2)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:27ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>for</span> (uint w2 = 0; runningFlag() &amp;&amp; (w2 &lt; m_orgImage.width()); ++w2)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> mostFrequentColor = MostFrequentColor(m_orgImage, w2, h2, d-&gt;brushSize, d-&gt;smoothness,</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> intensityCount.data(), averageColorR.data(), averageColorG.data(), averageColorB.data());</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> dptr = dest + w2 * m_orgImage.bytesDepth() + (m_orgImage.width() * h2 * m_orgImage.bytesDepth());</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> mostFrequentColor.setPixel(dptr);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> progress = (<span class='keyword'>int</span>)( ( (<span class='keyword'>double</span>)h2 * (100.0 / QThreadPool::globalInstance()-&gt;maxThreadCount()) ) / (stop-start));</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='keyword'>if</span> ((progress % 5 == 0) &amp;&amp; (progress &gt; oldProgress))</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> d-&gt;lock.lock();</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> oldProgress = progress;</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> d-&gt;globalProgress += 5;</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> postProgress(d-&gt;globalProgress);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> d-&gt;lock.unlock();</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Calling '~QScopedPointer'</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"><span class='keyword'>void</span> OilPaintFilter::filterImage()</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> QList&lt;<span class='keyword'>int</span>&gt; vals = multithreadedSteps(m_orgImage.height());</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> QList &lt;QFuture&lt;<span class='keyword'>void</span>&gt; &gt; tasks;</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; runningFlag() &amp;&amp; (j &lt; vals.count()-1) ; ++j)</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> tasks.append(QtConcurrent::run(<span class='keyword'>this</span>,</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> &amp;OilPaintFilter::oilPaintImageMultithreaded,</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> vals[j],</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> vals[j+1]</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> ));</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>foreach(QFuture&lt;<span class='keyword'>void</span>&gt; t, tasks)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(tasks<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (QFuture&lt;<br>void&gt; t = *_container_.i; _container_.control; _container_<br>.control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> t.waitForFinished();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"><span class='comment'>/** Function to determine the most frequent color in a matrix</span></td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='comment'>* Bits =&gt; Bits array</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>* Width =&gt; Image width</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>* Height =&gt; Image height</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>* X =&gt; Position horizontal</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>* Y =&gt; Position vertical</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>* Radius =&gt; Is the radius of the matrix to be analyzed</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='comment'>* Intensity =&gt; Intensity to calculate</span></td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='comment'>* Theory =&gt; This function creates a matrix with the analyzed pixel in</span></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> <span class='comment'>* the center of this matrix and find the most frequently color</span></td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line">DColor OilPaintFilter::MostFrequentColor(DImg&amp; src, <span class='keyword'>int</span> X, <span class='keyword'>int</span> Y, <span class='keyword'>int</span> Radius, <span class='keyword'>int</span> Intensity,</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> uchar* intensityCount, uint* averageColorR, uint* averageColorG, uint* averageColorB)</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>int</span> i, w, h, I, Width, Height;</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> uint red, green, blue;</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> uchar* dest = src.bits();</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>int</span> bytesDepth = src.bytesDepth();</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> uchar* sptr = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>bool</span> sixteenBit = src.sixteenBit();</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> DColor mostFrequentColor;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='keyword'>double</span> Scale = Intensity / (sixteenBit ? 65535.0 : 255.0);</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> Width = (<span class='keyword'>int</span>)src.width();</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> Height = (<span class='keyword'>int</span>)src.height();</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='comment'>// Erase the array</span></td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> memset(intensityCount, 0, (Intensity + 1) * <span class='keyword'>sizeof</span>(uchar));</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> <span class='keyword'>for</span> (w = X - Radius; w &lt;= X + Radius; ++w)</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> <span class='keyword'>for</span> (h = Y - Radius; h &lt;= Y + Radius; ++h)</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> <span class='comment'>// This condition helps to identify when a point doesn't exist</span></td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> <span class='keyword'>if</span> ((w &gt;= 0) &amp;&amp; (w &lt; Width) &amp;&amp; (h &gt;= 0) &amp;&amp; (h &lt; Height))</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> sptr = dest + w * bytesDepth + (Width * h * bytesDepth);</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> DColor color(sptr, sixteenBit);</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> red = (uint)color.red();</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> green = (uint)color.green();</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> blue = (uint)color.blue();</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> I = lround(GetIntensity(red, green, blue) * Scale);</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> intensityCount[I]++;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>if</span> (intensityCount[I] == 1)</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> averageColorR[I] = red;</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> averageColorG[I] = green;</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> averageColorB[I] = blue;</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> averageColorR[I] += red;</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> averageColorG[I] += green;</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> averageColorB[I] += blue;</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> I = 0;</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>int</span> MaxInstance = 1;</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt;= Intensity ; ++i)</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='keyword'>if</span> (intensityCount[i] &gt; MaxInstance)</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> I = i;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> MaxInstance = intensityCount[i];</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='comment'>// get Alpha channel value from original (unchanged)</span></td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> mostFrequentColor = src.getPixelColor(X, Y);</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='comment'>// Overwrite RGB values to destination.</span></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> mostFrequentColor.setRed(averageColorR[I] / MaxInstance);</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> mostFrequentColor.setGreen(averageColorG[I] / MaxInstance);</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> mostFrequentColor.setBlue(averageColorB[I] / MaxInstance);</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='keyword'>return</span> mostFrequentColor;</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"><span class='comment'>/** Function to calculate the color intensity and return the luminance (Y)</span></td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> <span class='comment'>* component of YIQ color model.</span></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>double</span> OilPaintFilter::GetIntensity(uint Red, uint Green, uint Blue)</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='keyword'>return</span> Red * 0.3 + Green * 0.59 + Blue * 0.11;</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line">FilterAction OilPaintFilter::filterAction()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> FilterAction action(FilterIdentifier(), CurrentVersion());</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> action.setDisplayableName(DisplayableName());</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> action.addParameter(QLatin1String(<span class='string_literal'>"brushSize"</span>), d-&gt;brushSize);</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> action.addParameter(QLatin1String(<span class='string_literal'>"smoothness"</span>), d-&gt;smoothness);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> action;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"><span class='keyword'>void</span> OilPaintFilter::readParameters(<span class='keyword'>const</span> Digikam::FilterAction&amp; action)</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> d-&gt;brushSize = action.parameter(QLatin1String(<span class='string_literal'>"brushSize"</span>)).toInt();</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> d-&gt;smoothness = action.parameter(QLatin1String(<span class='string_literal'>"smoothness"</span>)).toInt();</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table><hr class=divider>
<div id=File17019>
<div class=FileNav><a href="#File1">&#x2190;</a></div><h4 class=FileName>/usr/lib64/qt5/include/QtCore/qscopedpointer.h</h4>
</div>
<table class="code" data-fileid="17019">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/****************************************************************************</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"><span class='comment'>** Copyright (C) 2016 The Qt Company Ltd.</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"><span class='comment'>** Contact: https://www.qt.io/licensing/</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"><span class='comment'>** This file is part of the QtCore module of the Qt Toolkit.</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"><span class='comment'>** $QT_BEGIN_LICENSE:LGPL$</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"><span class='comment'>** Commercial License Usage</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"><span class='comment'>** Licensees holding valid commercial Qt licenses may use this file in</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"><span class='comment'>** accordance with the commercial license agreement provided with the</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"><span class='comment'>** Software or, alternatively, in accordance with the terms contained in</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"><span class='comment'>** a written agreement between you and The Qt Company. For licensing terms</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"><span class='comment'>** and conditions see https://www.qt.io/terms-conditions. For further</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"><span class='comment'>** information use the contact form at https://www.qt.io/contact-us.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"><span class='comment'>** GNU Lesser General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU Lesser</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"><span class='comment'>** General Public License version 3 as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.LGPL3 included in the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"><span class='comment'>** packaging of this file. Please review the following information to</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"><span class='comment'>** ensure the GNU Lesser General Public License version 3 requirements</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"><span class='comment'>** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='comment'>** GNU General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"><span class='comment'>** General Public License version 2.0 or (at your option) the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>** Public license version 3 or any later version approved by the KDE Free</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='comment'>** Qt Foundation. The licenses are as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>** included in the packaging of this file. Please review the following</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='comment'>** information to ensure the GNU General Public License requirements will</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>** be met: https://www.gnu.org/licenses/gpl-2.0.html and</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='comment'>** https://www.gnu.org/licenses/gpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>** $QT_END_LICENSE$</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>****************************************************************************/</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#ifndef QSCOPEDPOINTER_H</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#define QSCOPEDPOINTER_H</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;QtCore/qglobal.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include &lt;stdlib.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line">QT_BEGIN_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='keyword'>struct</span> QScopedPointerDeleter</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>inline</span> <span class='keyword'>void</span> cleanup(T *pointer)</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='comment'>// Enforce a complete type.</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='comment'>// If you get a compile error here, read the section on forward declared</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> <span class='comment'>// classes in the QScopedPointer documentation.</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> <span class='keyword'>typedef</span> <span class='keyword'>char</span> IsIncompleteType[ <span class='keyword'>sizeof</span>(T) ? 1 : -1 ];</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> (<span class='keyword'>void</span>) <span class='keyword'>sizeof</span>(IsIncompleteType);</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>delete</span> <span class="mrange">pointer</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"><span class='keyword'>struct</span> QScopedPointerArrayDeleter</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>inline</span> <span class='keyword'>void</span> cleanup(T *pointer)</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> <span class='comment'>// Enforce a complete type.</span></td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> <span class='comment'>// If you get a compile error here, read the section on forward declared</span></td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='comment'>// classes in the QScopedPointer documentation.</span></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>typedef</span> <span class='keyword'>char</span> IsIncompleteType[ <span class='keyword'>sizeof</span>(T) ? 1 : -1 ];</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> (<span class='keyword'>void</span>) <span class='keyword'>sizeof</span>(IsIncompleteType);</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>delete</span> [] pointer;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"><span class='keyword'>struct</span> QScopedPointerPodDeleter</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>inline</span> <span class='keyword'>void</span> cleanup(<span class='keyword'>void</span> *pointer) { <span class='keyword'>if</span> (pointer) free(pointer); }</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"><span class='directive'>#ifndef QT_NO_QOBJECT</span></td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"><span class='keyword'>struct</span> QScopedPointerObjectDeleteLater</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>inline</span> <span class='keyword'>void</span> cleanup(T *pointer) { <span class='keyword'>if</span> (pointer) pointer-&gt;deleteLater(); }</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"><span class='keyword'>class</span> QObject;</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"><span class='keyword'>typedef</span> QScopedPointerObjectDeleteLater&lt;QObject&gt; QScopedPointerDeleteLater;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T, <span class='keyword'>typename</span> Cleanup = QScopedPointerDeleter&lt;T&gt; &gt;</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"><span class='keyword'>class</span> QScopedPointer</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>typedef</span> T *QScopedPointer:: *RestrictedBool;</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>explicit</span> QScopedPointer(T *p = <span class='keyword'>nullptr</span>) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span> : d(p)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='keyword'>inline</span> ~QScopedPointer()</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> T *oldD = <span class='keyword'>this</span>-&gt;d;</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class="mrange">Cleanup::cleanup(oldD)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Calling 'QScopedPointerDeleter::cleanup'</td><td><div class="PathNav"><a href="#EndPath" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> <span class='keyword'>inline</span> T &amp;<span class='keyword'>operator</span>*() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>Q_ASSERT(d)<span class='expansion'>((d) ? static_cast&lt;void&gt;(0) : qt_assert("d", "/usr/lib64/qt5/include/QtCore/qscopedpointer.h"<br>, 112))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>return</span> *d;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> T *<span class='keyword'>operator</span>-&gt;() <span class='keyword'>const</span> <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!() <span class='keyword'>const</span> <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='keyword'>return</span> !d;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"><span class='directive'>#if defined(Q_QDOC)</span></td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>operator</span> <span class='keyword'>bool</span>() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='keyword'>return</span> isNull() ? <span class='keyword'>nullptr</span> : &amp;QScopedPointer::d;</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>operator</span> RestrictedBool() <span class='keyword'>const</span> <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> <span class='keyword'>return</span> isNull() ? <span class='keyword'>nullptr</span> : &amp;QScopedPointer::d;</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> T *data() <span class='keyword'>const</span> <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> T *get() <span class='keyword'>const</span> <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> <span class='keyword'>return</span> d;</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='keyword'>bool</span> isNull() <span class='keyword'>const</span> <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='keyword'>return</span> !d;</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>void</span> reset(T *other = <span class='keyword'>nullptr</span>) <span class='macro'>Q_DECL_NOEXCEPT_EXPR(<span class='keyword'>noexcept</span>(Cleanup::cleanup(std::declval&lt;T *&gt;())))<span class='expansion'>noexcept(noexcept(Cleanup::cleanup(std::declval&lt;T *&gt;())<br>))</span></span></td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>if</span> (d == other)</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> T *oldD = d;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> d = other;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> Cleanup::cleanup(oldD);</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> T *take() <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> T *oldD = d;</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> d = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>return</span> oldD;</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='keyword'>void</span> swap(QScopedPointer&lt;T, Cleanup&gt; &amp;other) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> qSwap(d, other.d);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='keyword'>typedef</span> T *pointer;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"><span class='keyword'>protected</span>:</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> T *d;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>Q_DISABLE_COPY(QScopedPointer)<span class='expansion'>QScopedPointer(const QScopedPointer &amp;) = delete; QScopedPointer<br> &amp;operator=(const QScopedPointer &amp;) = delete;</span></span></td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;lhs, <span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;rhs) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>return</span> lhs.data() == rhs.data();</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(<span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;lhs, <span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;rhs) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>return</span> lhs.data() != rhs.data();</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;lhs, std::nullptr_t) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>return</span> lhs.isNull();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(std::nullptr_t, <span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;rhs) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='keyword'>return</span> rhs.isNull();</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(<span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;lhs, std::nullptr_t) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='keyword'>return</span> !lhs.isNull();</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(std::nullptr_t, <span class='keyword'>const</span> QScopedPointer&lt;T, Cleanup&gt; &amp;rhs) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>return</span> !rhs.isNull();</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T, <span class='keyword'>class</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>void</span> swap(QScopedPointer&lt;T, Cleanup&gt; &amp;p1, QScopedPointer&lt;T, Cleanup&gt; &amp;p2) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line">{ p1.swap(p2); }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T, <span class='keyword'>typename</span> Cleanup = QScopedPointerArrayDeleter&lt;T&gt; &gt;</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"><span class='keyword'>class</span> QScopedArrayPointer : <span class='keyword'>public</span> QScopedPointer&lt;T, Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> Ptr&gt;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='keyword'>using</span> if_same_type = <span class='keyword'>typename</span> std::enable_if&lt;std::is_same&lt;<span class='keyword'>typename</span> std::remove_cv&lt;T&gt;::type, Ptr&gt;::value, <span class='keyword'>bool</span>&gt;::type;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='keyword'>inline</span> QScopedArrayPointer() : QScopedPointer&lt;T, Cleanup&gt;(<span class='keyword'>nullptr</span>) {}</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> D, if_same_type&lt;D&gt; = <span class='keyword'>true</span>&gt;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='keyword'>explicit</span> QScopedArrayPointer(D *p)</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> : QScopedPointer&lt;T, Cleanup&gt;(p)</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>inline</span> T &amp;<span class='keyword'>operator</span>[](<span class='keyword'>int</span> i)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>this</span>-&gt;d[i];</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T &amp;<span class='keyword'>operator</span>[](<span class='keyword'>int</span> i) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>this</span>-&gt;d[i];</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> <span class='keyword'>void</span> swap(QScopedArrayPointer &amp;other) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span> <span class='comment'>// prevent QScopedPointer &lt;-&gt;QScopedArrayPointer swaps</span></td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> { QScopedPointer&lt;T, Cleanup&gt;::swap(other); }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>explicit</span> <span class='keyword'>inline</span> QScopedArrayPointer(<span class='keyword'>void</span> *) {</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> <span class='comment'>// Enforce the same type.</span></td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> <span class='comment'>// If you get a compile error here, make sure you declare</span></td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='comment'>// QScopedArrayPointer with the same template type as you pass to the</span></td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='comment'>// constructor. See also the QScopedPointer documentation.</span></td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='comment'>// Storing a scalar array as a pointer to a different type is not</span></td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='comment'>// allowed and results in undefined behavior.</span></td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='macro'>Q_DISABLE_COPY(QScopedArrayPointer)<span class='expansion'>QScopedArrayPointer(const QScopedArrayPointer &amp;) = delete<br>; QScopedArrayPointer &amp;operator=(const QScopedArrayPointer<br> &amp;) = delete;</span></span></td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T, <span class='keyword'>typename</span> Cleanup&gt;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"><span class='keyword'>inline</span> <span class='keyword'>void</span> swap(QScopedArrayPointer&lt;T, Cleanup&gt; &amp;lhs, QScopedArrayPointer&lt;T, Cleanup&gt; &amp;rhs) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line">{ lhs.swap(rhs); }</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line">QT_END_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"><span class='directive'>#endif // QSCOPEDPOINTER_H</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-b422cd.html b/static/reports/clang/master/report-653638.html
similarity index 99%
rename from static/reports/clang/master/report-b422cd.html
rename to static/reports/clang/master/report-653638.html
index e7f23a6cc..22d0dbf05 100644
--- a/static/reports/clang/master/report-b422cd.html
+++ b/static/reports/clang/master/report-653638.html
@@ -1,638 +1,638 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'directChild2.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testDirectChildrenSaving -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT ea5b20e268c981bd94c30d884282c510 -->
<!-- BUGLINE 208 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 26 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 208, column 1</a><br />Potential leak of memory pointed to by 'directChild2.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "95": 1, "96": 1, "97": 1, "187": 1, "188": 1, "189": 1, "190": 1, "191": 1, "192": 1, "194": 1, "195": 1, "197": 1, "198": 1, "199": 1, "200": 1, "202": 1, "203": 1, "204": 1, "205": 1, "207": 1, "208": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(parentSaver)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:46ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'directChild2.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-ec55de.html b/static/reports/clang/master/report-705f27.html
similarity index 99%
rename from static/reports/clang/master/report-ec55de.html
rename to static/reports/clang/master/report-705f27.html
index e69fb78a4..ef1554e0f 100644
--- a/static/reports/clang/master/report-ec55de.html
+++ b/static/reports/clang/master/report-705f27.html
@@ -1,598 +1,598 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'command' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -->
<!-- FILENAME rajcetalker.cpp -->
<!-- FUNCTIONNAME loadAlbums -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 1a5e8be0f5956afa23a1f102576fee25 -->
<!-- BUGLINE 127 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 2 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 127, column 1</a><br />Potential leak of memory pointed to by 'command'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"123": 1, "124": 1, "125": 1, "126": 1, "127": 1, "235": 1, "236": 1, "237": 1, "239": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2011-04-12</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A tool to export items to Rajce web service</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2011 by Lukas Krejci &lt;krejci.l at centrum dot cz&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2011-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "rajcetalker.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QQueue&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QNetworkReply&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QNetworkAccessManager&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QCryptographicHash&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QXmlResultItems&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QXmlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "rajcempform.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "rajcecommand.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "digikam_version.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dmetadata.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "wstoolutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "previewloadthread.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericRajcePlugin</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='keyword'>const</span> QUrl RAJCE_URL(QLatin1String(<span class='string_literal'>"http://www.rajce.idnes.cz/liveAPI/index.php"</span>));</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> RajceTalker::Private</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> : queueAccess(QMutex::Recursive),</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> netMngr(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> reply(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QQueue&lt;RajceCommand*&gt; commandQueue;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMutex queueAccess;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString tmpDir;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QNetworkAccessManager* netMngr;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QNetworkReply* reply;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> RajceSession session;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">RajceTalker::RajceTalker(QWidget* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d-&gt;tmpDir = WSToolUtils::makeTemporaryDir(<span class='string_literal'>"rajce"</span>).absolutePath() + QLatin1Char('/');</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;netMngr = <span class='keyword'>new</span> QNetworkAccessManager(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> connect(d-&gt;netMngr, <span class='macro'>SIGNAL(finished(QNetworkReply*))<span class='expansion'>qFlagLocation("2""finished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "84")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotFinished(QNetworkReply*))<span class='expansion'>qFlagLocation("1""slotFinished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "85")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">RajceTalker::~RajceTalker()</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> WSToolUtils::removeTemporaryDir(<span class='string_literal'>"rajce"</span>);</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>const</span> RajceSession&amp; RajceTalker::session() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>void</span> RajceTalker::startCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 102, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Sending command:\n"</span> &lt;&lt; command-&gt;getXml();</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> QByteArray data = command-&gt;encode();</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> QNetworkRequest netRequest(RAJCE_URL);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> netRequest.setHeader(QNetworkRequest::ContentTypeHeader, command-&gt;contentType());</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;reply = d-&gt;netMngr-&gt;post(netRequest, data);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> connect(d-&gt;reply, <span class='macro'>SIGNAL(uploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("2""uploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "111")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>SLOT(slotUploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("1""slotUploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "112")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> emit signalBusyStarted(command-&gt;commandType());</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"><span class='keyword'>void</span> RajceTalker::login(<span class='keyword'>const</span> QString&amp; username, <span class='keyword'>const</span> QString&amp; password)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> LoginCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> LoginCommand(username, password);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> RajceTalker::loadAlbums()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> AlbumListCommand* <span class='keyword'>const</span> command = <span class="mrange"><span class='keyword'>new</span> AlbumListCommand(d-&gt;session)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:39ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'command'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"><span class='keyword'>void</span> RajceTalker::createAlbum(<span class='keyword'>const</span> QString&amp; name, <span class='keyword'>const</span> QString&amp; description, <span class='keyword'>bool</span> visible)</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> CreateAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CreateAlbumCommand(name, description, visible, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotFinished(QNetworkReply* reply)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (reply != d-&gt;reply)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> QString response = QString::fromUtf8(reply-&gt;readAll());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 144, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; response;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> RajceCommand* <span class='keyword'>const</span> c = d-&gt;commandQueue.head();</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> c-&gt;processResponse(response, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> RajceCommandType type = c-&gt;commandType();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>delete</span> c;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 157, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"State after command: "</span> &lt;&lt; d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>// Let the users react on the command before we</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>// let the next queued command in.</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>// This enables the connected slots to read in</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>// reliable values from the state and/or</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>// clear the error state once it's handled.</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> emit signalBusyFinished(type);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> reply-&gt;deleteLater();</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>// Only dequeue the command after the above signal has been</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='comment'>// emitted so that the users can queue other commands</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='comment'>// without them being started straight away in the enqueue</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='comment'>// method which would happen if the command was dequed</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='comment'>// before the signal and the signal was emitted in the same</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='comment'>// thread (which is the case (always?)).</span></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;commandQueue.dequeue();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='comment'>// see if there's something to continue with</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> startCommand(d-&gt;commandQueue.head());</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>void</span> RajceTalker::logout()</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>//TODO</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>void</span> RajceTalker::openAlbum(<span class='keyword'>const</span> RajceAlbum&amp; album)</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> OpenAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> OpenAlbumCommand(album.id, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> RajceTalker::closeAlbum()</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;session.openAlbumToken().isEmpty())</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> CloseAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CloseAlbumCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> emit signalBusyFinished(CloseAlbum);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"><span class='keyword'>void</span> RajceTalker::uploadPhoto(<span class='keyword'>const</span> QString&amp; path, <span class='keyword'>unsigned</span> dimension, <span class='keyword'>int</span> jpgQuality)</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> AddPhotoCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AddPhotoCommand(d-&gt;tmpDir, path, dimension, jpgQuality, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> RajceTalker::clearLastError()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> d-&gt;session.lastErrorCode() = 0;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> d-&gt;session.lastErrorMessage() = QLatin1String(<span class='string_literal'>""</span>);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotUploadProgress(qint64 bytesSent, qint64 bytesTotal)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (bytesTotal &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>unsigned</span> percent = (<span class='keyword'>unsigned</span>)((<span class='keyword'>float</span>)bytesSent / bytesTotal * 100);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 230, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Percent signalled: "</span> &lt;&lt; percent;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> emit signalBusyProgress(d-&gt;commandQueue.head()-&gt;commandType(), percent);</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"><span class='keyword'>void</span> RajceTalker::enqueueCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> (d-&gt;session.lastErrorCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> d-&gt;commandQueue.enqueue(command);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> startCommand(command);</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"><span class='keyword'>void</span> RajceTalker::cancelCurrentCommand()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='keyword'>if</span> (d-&gt;reply != <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> slotFinished(d-&gt;reply);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> d-&gt;reply-&gt;abort();</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"><span class='keyword'>void</span> RajceTalker::init(<span class='keyword'>const</span> RajceSession&amp; initialState)</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;session = initialState;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">} <span class='comment'>// namespace DigikamGenericRajcePlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-4bf23f.html b/static/reports/clang/master/report-77df15.html
similarity index 99%
rename from static/reports/clang/master/report-4bf23f.html
rename to static/reports/clang/master/report-77df15.html
index 849385c2e..0e0d4ed24 100644
--- a/static/reports/clang/master/report-4bf23f.html
+++ b/static/reports/clang/master/report-77df15.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild1.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenLoading -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 02a70d99a1b209a223ee0ef560a0fbf3 -->
<!-- BUGLINE 246 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 246, column 1</a><br />Potential leak of memory pointed to by 'indirectChild1.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "100": 1, "101": 1, "102": 1, "210": 1, "211": 1, "212": 1, "213": 1, "214": 1, "215": 1, "216": 1, "217": 1, "218": 1, "219": 1, "221": 1, "222": 1, "224": 1, "226": 1, "227": 1, "228": 1, "229": 1, "230": 1, "231": 1, "232": 1, "234": 1, "235": 1, "236": 1, "237": 1, "238": 1, "239": 1, "240": 1, "241": 1, "243": 1, "245": 1, "246": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild1)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild1.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-634e13.html b/static/reports/clang/master/report-825366.html
similarity index 99%
rename from static/reports/clang/master/report-634e13.html
rename to static/reports/clang/master/report-825366.html
index ca0d82eb1..8d9a2185d 100644
--- a/static/reports/clang/master/report-634e13.html
+++ b/static/reports/clang/master/report-825366.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild3.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenLoading -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 08b9020093c72c3b5c0057532155d634 -->
<!-- BUGLINE 246 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 246, column 1</a><br />Potential leak of memory pointed to by 'indirectChild3.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "90": 1, "91": 1, "92": 1, "100": 1, "101": 1, "102": 1, "210": 1, "211": 1, "212": 1, "213": 1, "214": 1, "215": 1, "216": 1, "217": 1, "218": 1, "219": 1, "221": 1, "222": 1, "224": 1, "226": 1, "227": 1, "228": 1, "229": 1, "230": 1, "231": 1, "232": 1, "234": 1, "235": 1, "236": 1, "237": 1, "238": 1, "239": 1, "240": 1, "241": 1, "243": 1, "245": 1, "246": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild2)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild3.wp.value'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-e7a95e.html b/static/reports/clang/master/report-889a28.html
similarity index 99%
rename from static/reports/clang/master/report-e7a95e.html
rename to static/reports/clang/master/report-889a28.html
index a00977b29..a96dd2b2d 100644
--- a/static/reports/clang/master/report-e7a95e.html
+++ b/static/reports/clang/master/report-889a28.html
@@ -1,1236 +1,1236 @@
<!doctype html>
<html>
<head>
<title>/usr/lib64/qt5/include/QtCore/qshareddata.h</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Use of memory after it is freed -->
<!-- BUGTYPE Use-after-free -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /usr/lib64/qt5/include/QtCore/qshareddata.h -->
<!-- FILENAME qshareddata.h -->
<!-- FUNCTIONNAME constData -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 51c4840bb153af5ba2b5887fe7f2afce -->
<!-- BUGLINE 83 -->
<!-- BUGCOLUMN 41 -->
<!-- BUGPATHLENGTH 29 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>usr/lib64/qt5/include/QtCore/qshareddata.h</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 83, column 41</a><br />Use of memory after it is freed</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/libs/database/digikamdatabase_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/database/item/containers/itemtagpair.cpp -faddrsig
+<div class="spoiler">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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/libs/database/digikamdatabase_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/database/item/containers/itemtagpair.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"44": 1, "51": 1, "52": 1, "53": 1, "54": 1, "55": 1, "77": 1, "78": 1, "79": 1, "83": 1, "87": 1, "88": 1, "89": 1, "91": 1, "92": 1, "98": 1, "99": 1, "100": 1, "125": 1, "126": 1, "127": 1, "135": 1, "136": 1, "137": 1, "138": 1}, "4438": {"60": 1, "160": 1, "161": 1, "162": 1}, "4440": {"103": 1, "104": 1, "114": 1, "115": 1, "221": 1}, "4443": {"224": 1, "225": 1, "226": 1, "227": 1, "248": 1, "249": 1, "250": 1, "251": 1, "263": 1, "264": 1, "265": 1, "269": 1, "270": 1, "271": 1}, "4601": {"109": 1, "110": 1, "111": 1, "672": 1}, "4603": {"79": 1, "80": 1, "81": 1, "82": 1, "256": 1, "294": 1, "295": 1, "296": 1, "302": 1, "303": 1, "304": 1, "366": 1, "367": 1, "368": 1, "369": 1, "374": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "5075": {"132": 1, "136": 1, "137": 1, "138": 1, "139": 1, "141": 1, "142": 1, "143": 1, "144": 1}, "12112": {"60": 1, "61": 1, "74": 1, "79": 1, "83": 1, "89": 1, "92": 1, "158": 1, "246": 1, "247": 1, "248": 1, "251": 1, "252": 1, "253": 1, "257": 1, "258": 1, "259": 1, "260": 1, "261": 1, "262": 1, "263": 1, "283": 1, "284": 1, "285": 1}, "13086": {"61": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<div id=File1>
<h4 class=FileName>/mnt/devel/GIT/6.x/core/libs/database/item/containers/itemtagpair.cpp</h4>
<div class=FileNav><a href="#File5075">&#x2192;</a></div></div>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-07-05</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Access to the properties of an Item / Tag pair, i.e., a tag associated to an item</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2010 by Marcel Wiesweg &lt;marcel dot wiesweg at gmx dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "itemtagpair.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QSharedData&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include "coredb.h"</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include "coredbaccess.h"</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include "iteminfo.h"</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include "tagscache.h"</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='keyword'>typedef</span> QSharedDataPointer&lt;ItemTagPairPriv&gt; ItemTagPairPrivSharedPointer;</td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='comment'>// NOTE: do not use Q_DECL_HIDDEN hidden here to prevent export symbols warnings under Windows.</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> ItemTagPairPriv : <span class='keyword'>public</span> QSharedData</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> <span class='keyword'>static</span> ItemTagPairPrivSharedPointer createGuarded(qlonglong imageId, <span class='keyword'>int</span> tagId);</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> ItemTagPairPriv()</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> tagId = -1;</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> isAssigned = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> propertiesLoaded = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> <span class='keyword'>bool</span> isNull() <span class='keyword'>const</span>;</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> <span class='keyword'>void</span> init(<span class='keyword'>const</span> ItemInfo&amp; info, <span class='keyword'>int</span> tagId);</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>void</span> checkProperties();</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> ItemInfo info;</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> <span class='keyword'>int</span> tagId;</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> <span class='keyword'>bool</span> isAssigned;</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>bool</span> propertiesLoaded;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMultiMap&lt;QString, QString&gt; properties;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> ItemTagPairPrivSharedNull : <span class='keyword'>public</span> ItemTagPairPrivSharedPointer</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> ItemTagPairPrivSharedNull()</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QSharedDataPointer&lt;ItemTagPairPriv&gt;(<span class="mrange"><span class='keyword'>new</span> ItemTagPairPriv</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:47ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"><span class="mrange"><span class="mrange"><span class="mrange"><span class="mrange"><span class='macro'>Q_GLOBAL_STATIC</span></span></span></span>(ItemTagPairPrivSharedNull, imageTagPairPrivSharedNull)<span class='expansion'>namespace { namespace Q_QGS_imageTagPairPrivSharedNull { typedef<br> ItemTagPairPrivSharedNull Type; QBasicAtomicInt guard = { QtGlobalStatic<br>::Uninitialized }; __attribute__((visibility("hidden"))) inline<br> Type *innerFunction() { struct HolderBase { ~HolderBase() noexcept<br> { if (guard.load() == QtGlobalStatic::Initialized) guard.store<br>(QtGlobalStatic::Destroyed); } }; static struct Holder : public<br> HolderBase { Type value; Holder() noexcept(noexcept(Type ())<br>) : value () { guard.store(QtGlobalStatic::Initialized); } } holder<br>; return &amp;holder.value; } } } static QGlobalStatic&lt;ItemTagPairPrivSharedNull<br>, Q_QGS_imageTagPairPrivSharedNull::innerFunction, Q_QGS_imageTagPairPrivSharedNull<br>::guard&gt; imageTagPairPrivSharedNull;</span></span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Calling default constructor for 'Holder'</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Calling default constructor for 'ItemTagPairPrivSharedNull'</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Returning from default constructor for 'ItemTagPairPrivSharedNull'</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Returning from default constructor for 'Holder'</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line">ItemTagPairPrivSharedPointer ItemTagPairPriv::createGuarded(qlonglong imageId, <span class='keyword'>int</span> tagId)</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">imageId &lt;= 0</span> || <span class="mrange">tagId &lt;= 0</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming 'imageId' is &gt; 0</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:25ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming 'tagId' is &lt;= 0</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/libs/database/item/containers/itemtagpair.cpp"<br>, 91, __PRETTY_FUNCTION__, DIGIKAM_DATABASE_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Attempt to create invalid tag pair image id"</span> &lt;&lt; imageId &lt;&lt; <span class='string_literal'>"tag id"</span> &lt;&lt; tagId;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 92</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> <span class="mrange"><span class="mrange">*imageTagPairPrivSharedNull</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:16ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Calling 'QGlobalStatic::operator*'</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:16ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Returned allocated memory</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='keyword'>return</span> ItemTagPairPrivSharedPointer(<span class='keyword'>new</span> ItemTagPairPriv);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"><span class='keyword'>void</span> ItemTagPairPriv::init(<span class='keyword'>const</span> ItemInfo&amp; i, <span class='keyword'>int</span> t)</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">isNull()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Calling 'ItemTagPairPriv::isNull'</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> tagId = t;</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> info = i;</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> isAssigned = info.tagIds().contains(tagId);</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='keyword'>void</span> ItemTagPairPriv::checkProperties()</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='keyword'>if</span> (!isNull() &amp;&amp; !propertiesLoaded)</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> QList&lt;ImageTagProperty&gt; props = CoreDbAccess().db()-&gt;getImageTagProperties(info.id(), tagId);</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> ImageTagProperty&amp; p, props)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(props<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const ImageTagProperty<br>&amp; p = *_container_.i; _container_.control; _container_.control<br> = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> properties.insert(p.property, p.value);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> propertiesLoaded = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"><span class='keyword'>bool</span> ItemTagPairPriv::isNull() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>this</span> == <span class="mrange">imageTagPairPrivSharedNull-&gt;constData()</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:20ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Calling 'QSharedDataPointer::constData'</td><td><div class="PathNav"><a href="#EndPath" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">ItemTagPair::ItemTagPair()</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> : d(*imageTagPairPrivSharedNull)</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line">ItemTagPair::ItemTagPair(qlonglong imageId, <span class='keyword'>int</span> tagId)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> : d(<span class="mrange"><span class="mrange"><span class="mrange"><span class="mrange">ItemTagPairPriv::createGuarded(imageId, tagId)</span></span></span></span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Calling 'ItemTagPairPriv::createGuarded'</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Returned allocated memory</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Calling 'QSharedDataPointer::operator Digikam::ItemTagPairPriv *'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Returning; memory was released</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class="mrange">d-&gt;init(ItemInfo(imageId), tagId)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Calling 'ItemTagPairPriv::init'</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line">ItemTagPair::ItemTagPair(<span class='keyword'>const</span> ItemInfo&amp; info, <span class='keyword'>int</span> tagId)</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> : d(ItemTagPairPriv::createGuarded(info.id(), tagId))</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> d-&gt;init(info, tagId);</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">ItemTagPair::~ItemTagPair()</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line">ItemTagPair::ItemTagPair(<span class='keyword'>const</span> ItemTagPair&amp; other)</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> d = other.d;</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line">ItemTagPair&amp; ItemTagPair::<span class='keyword'>operator</span>=(<span class='keyword'>const</span> ItemTagPair&amp; other)</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> d = other.d;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='keyword'>bool</span> ItemTagPair::isNull() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>return</span> d == *imageTagPairPrivSharedNull;</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line">QList&lt;ItemTagPair&gt; ItemTagPair::availablePairs(qlonglong imageId)</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='keyword'>return</span> availablePairs(ItemInfo(imageId));</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line">QList&lt;ItemTagPair&gt; ItemTagPair::availablePairs(<span class='keyword'>const</span> ItemInfo&amp; info)</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> QList&lt;ItemTagPair&gt; pairs;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>if</span> (info.isNull())</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>return</span> pairs;</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> QList&lt;<span class='keyword'>int</span>&gt; tagIds = CoreDbAccess().db()-&gt;getTagIdsWithProperties(info.id());</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>int</span> tagId, tagIds)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(tagIds<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (int tagId<br> = *_container_.i; _container_.control; _container_.control =<br> 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> pairs &lt;&lt; ItemTagPair(info, tagId);</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>return</span> pairs;</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">qlonglong ItemTagPair::imageId() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> <span class='keyword'>return</span> d-&gt;info.id();</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>int</span> ItemTagPair::tagId() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>return</span> d-&gt;tagId;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"><span class='keyword'>bool</span> ItemTagPair::isAssigned() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>return</span> d-&gt;isAssigned;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"><span class='keyword'>void</span> ItemTagPair::assignTag()</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;isNull() &amp;&amp; !d-&gt;isAssigned)</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> d-&gt;info.setTag(d-&gt;tagId);</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> d-&gt;isAssigned = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> ItemTagPair::unAssignTag()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;isNull() &amp;&amp; d-&gt;isAssigned)</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> d-&gt;info.removeTag(d-&gt;tagId);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> d-&gt;isAssigned = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"><span class='keyword'>bool</span> ItemTagPair::hasProperty(<span class='keyword'>const</span> QString&amp; key) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='keyword'>return</span> d-&gt;properties.contains(key);</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"><span class='keyword'>bool</span> ItemTagPair::hasAnyProperty(<span class='keyword'>const</span> QStringList&amp; keys) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> QString&amp; key, keys)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(keys<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const QString<br>&amp; key = *_container_.i; _container_.control; _container_.<br>control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>if</span> (d-&gt;properties.contains(key))</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"><span class='keyword'>bool</span> ItemTagPair::hasValue(<span class='keyword'>const</span> QString&amp; key, <span class='keyword'>const</span> QString&amp; value) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> <span class='keyword'>return</span> d-&gt;properties.contains(key, value);</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">QString ItemTagPair::value(<span class='keyword'>const</span> QString&amp; key) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> <span class='keyword'>return</span> d-&gt;properties.value(key);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line">QStringList ItemTagPair::allValues(<span class='keyword'>const</span> QStringList&amp; keys) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> QStringList values;</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> QString&amp; key, keys)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(keys<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const QString<br>&amp; key = *_container_.i; _container_.control; _container_.<br>control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> values &lt;&lt; d-&gt;properties.values(key);</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='keyword'>return</span> values;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">QStringList ItemTagPair::values(<span class='keyword'>const</span> QString&amp; key) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='keyword'>return</span> d-&gt;properties.values(key);</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line">QStringList ItemTagPair::propertyKeys() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='keyword'>return</span> d-&gt;properties.keys();</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line">QMap&lt;QString, QString&gt; ItemTagPair::properties() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> <span class='keyword'>return</span> d-&gt;properties;</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"><span class='keyword'>void</span> ItemTagPair::setProperty(<span class='keyword'>const</span> QString&amp; key, <span class='keyword'>const</span> QString&amp; value)</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> <span class='keyword'>if</span> (d-&gt;isNull() || d-&gt;info.isNull())</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> <span class='comment'>// for single entries in db, this can of course be optimized using a single UPDATE WHERE</span></td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> removeProperties(key);</td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> d-&gt;properties.replace(key, value);</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> CoreDbAccess().db()-&gt;addImageTagProperty(d-&gt;info.id(), d-&gt;tagId, key, value);</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"><span class='keyword'>void</span> ItemTagPair::addProperty(<span class='keyword'>const</span> QString&amp; key, <span class='keyword'>const</span> QString&amp; value)</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (d-&gt;isNull() || d-&gt;info.isNull())</td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;properties.contains(key, value))</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> d-&gt;properties.insert(key, value);</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> CoreDbAccess().db()-&gt;addImageTagProperty(d-&gt;info.id(), d-&gt;tagId, key, value);</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"><span class='keyword'>void</span> ItemTagPair::removeProperty(<span class='keyword'>const</span> QString&amp; key, <span class='keyword'>const</span> QString&amp; value)</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> <span class='keyword'>if</span> (d-&gt;isNull() || d-&gt;info.isNull())</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> <span class='keyword'>if</span> (d-&gt;properties.contains(key, value))</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> CoreDbAccess().db()-&gt;removeImageTagProperties(d-&gt;info.id(), d-&gt;tagId, key, value);</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> d-&gt;properties.remove(key, value);</td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"><span class='keyword'>void</span> ItemTagPair::removeProperties(<span class='keyword'>const</span> QString&amp; key)</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> <span class='keyword'>if</span> (d-&gt;isNull() || d-&gt;info.isNull())</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> d-&gt;checkProperties();</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>if</span> (d-&gt;properties.contains(key))</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> CoreDbAccess().db()-&gt;removeImageTagProperties(d-&gt;info.id(), d-&gt;tagId, key);</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> d-&gt;properties.remove(key);</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"><span class='keyword'>void</span> ItemTagPair::clearProperties()</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>if</span> (d-&gt;isNull() || d-&gt;info.isNull())</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='keyword'>if</span> (d-&gt;propertiesLoaded &amp;&amp; d-&gt;properties.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> CoreDbAccess().db()-&gt;removeImageTagProperties(d-&gt;info.id(), d-&gt;tagId);</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> d-&gt;properties.clear();</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> d-&gt;propertiesLoaded = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table><hr class=divider>
<div id=File5075>
<div class=FileNav><a href="#File1">&#x2190;</a></div><h4 class=FileName>/usr/lib64/qt5/include/QtCore/qglobalstatic.h</h4>
<div class=FileNav><a href="#File12112">&#x2192;</a></div></div>
<table class="code" data-fileid="5075">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/****************************************************************************</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"><span class='comment'>** Copyright (C) 2016 Intel Corporation.</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"><span class='comment'>** Contact: https://www.qt.io/licensing/</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"><span class='comment'>** This file is part of the QtCore module of the Qt Toolkit.</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"><span class='comment'>** $QT_BEGIN_LICENSE:LGPL$</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"><span class='comment'>** Commercial License Usage</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"><span class='comment'>** Licensees holding valid commercial Qt licenses may use this file in</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"><span class='comment'>** accordance with the commercial license agreement provided with the</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"><span class='comment'>** Software or, alternatively, in accordance with the terms contained in</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"><span class='comment'>** a written agreement between you and The Qt Company. For licensing terms</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"><span class='comment'>** and conditions see https://www.qt.io/terms-conditions. For further</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"><span class='comment'>** information use the contact form at https://www.qt.io/contact-us.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"><span class='comment'>** GNU Lesser General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU Lesser</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"><span class='comment'>** General Public License version 3 as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.LGPL3 included in the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"><span class='comment'>** packaging of this file. Please review the following information to</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"><span class='comment'>** ensure the GNU Lesser General Public License version 3 requirements</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"><span class='comment'>** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='comment'>** GNU General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"><span class='comment'>** General Public License version 2.0 or (at your option) the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>** Public license version 3 or any later version approved by the KDE Free</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='comment'>** Qt Foundation. The licenses are as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>** included in the packaging of this file. Please review the following</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='comment'>** information to ensure the GNU General Public License requirements will</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>** be met: https://www.gnu.org/licenses/gpl-2.0.html and</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='comment'>** https://www.gnu.org/licenses/gpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>** $QT_END_LICENSE$</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>****************************************************************************/</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include &lt;QtCore/qglobal.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#ifndef QGLOBALSTATIC_H</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#define QGLOBALSTATIC_H</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include &lt;QtCore/qatomic.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line">QT_BEGIN_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>namespace</span> QtGlobalStatic {</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='keyword'>enum</span> GuardValues {</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> Destroyed = -2,</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> Initialized = -1,</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> Uninitialized = 0,</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> Initializing = 1</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='directive'>#if !<span class='macro'>QT_CONFIG(thread)<span class='expansion'>(1/1 == 1)</span></span> || defined(Q_COMPILER_THREADSAFE_STATICS)</span></td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"><span class='comment'>// some compilers support thread-safe statics</span></td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"><span class='comment'>// The IA-64 C++ ABI requires this, so we know that all GCC versions since 3.4</span></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='comment'>// support it. C++11 also requires this behavior.</span></td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='comment'>// Clang and Intel CC masquerade as GCC when compiling on Linux.</span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"><span class='comment'>// Apple's libc++abi however uses a global lock for initializing local statics,</span></td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"><span class='comment'>// which will block other threads also trying to initialize a local static</span></td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"><span class='comment'>// until the constructor returns ...</span></td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"><span class='comment'>// We better avoid these kind of problems by using our own locked implementation.</span></td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"><span class='directive'>#if defined(Q_OS_UNIX) &amp;&amp; defined(Q_CC_INTEL)</span></td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"><span class='comment'>// Work around Intel issue ID 6000058488:</span></td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"><span class='comment'>// local statics inside an inline function inside an anonymous namespace are global</span></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"><span class='comment'>// symbols (this affects the IA-64 C++ ABI, so OS X and Linux only)</span></td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"><span class='directive'># define <span class='macro'>Q_GLOBAL_STATIC_INTERNAL_DECORATION<span class='expansion'>__attribute__((visibility("hidden"))) inline</span></span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span></span></td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"><span class='directive'># define <span class='macro'>Q_GLOBAL_STATIC_INTERNAL_DECORATION<span class='expansion'>__attribute__((visibility("hidden"))) inline</span></span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> inline</span></td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"><span class='directive'>#define <span class='macro'>Q_GLOBAL_STATIC_INTERNAL(ARGS)<span class='expansion'>__attribute__((visibility("hidden"))) inline Type *innerFunction<br>() { struct HolderBase { ~HolderBase() noexcept { if (guard.load<br>() == QtGlobalStatic::Initialized) guard.store(QtGlobalStatic<br>::Destroyed); } }; static struct Holder : public HolderBase {<br> Type value; Holder() noexcept(noexcept(Type ARGS)) : value ARGS<br> { guard.store(QtGlobalStatic::Initialized); } } holder; return<br> &amp;holder.value; }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='directive'><span class='macro'>Q_GLOBAL_STATIC_INTERNAL_DECORATION<span class='expansion'>__attribute__((visibility("hidden"))) inline</span></span> Type *innerFunction() \</span></td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='directive'>struct HolderBase { \</span></td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='directive'>~HolderBase() <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='directive'>{ if (guard.load() == QtGlobalStatic::Initialized) \</span></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='directive'>guard.store(QtGlobalStatic::Destroyed); } \</span></td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='directive'>}; \</span></td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> <span class='directive'>static struct Holder : public HolderBase { \</span></td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='directive'>Type value; \</span></td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='directive'>Holder() \</span></td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='directive'><span class='macro'>Q_DECL_NOEXCEPT_EXPR(noexcept(Type ARGS))<span class='expansion'>noexcept(noexcept(Type ARGS))</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='directive'>: value ARGS \</span></td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='directive'>{ guard.store(QtGlobalStatic::Initialized); } \</span></td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='directive'>} holder; \</span></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='directive'>return &amp;holder.value; \</span></td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"><span class='comment'>// We don't know if this compiler supports thread-safe global statics</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"><span class='comment'>// so use our own locked implementation</span></td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line">QT_END_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='directive'>#include &lt;QtCore/qmutex.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">QT_BEGIN_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"><span class='directive'>#define <span class='macro'>Q_GLOBAL_STATIC_INTERNAL(ARGS)<span class='expansion'>__attribute__((visibility("hidden"))) inline Type *innerFunction<br>() { struct HolderBase { ~HolderBase() noexcept { if (guard.load<br>() == QtGlobalStatic::Initialized) guard.store(QtGlobalStatic<br>::Destroyed); } }; static struct Holder : public HolderBase {<br> Type value; Holder() noexcept(noexcept(Type ARGS)) : value ARGS<br> { guard.store(QtGlobalStatic::Initialized); } } holder; return<br> &amp;holder.value; }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='directive'><span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> inline Type *innerFunction() \</span></td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> <span class='directive'>static Type *d; \</span></td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='directive'>static QBasicMutex mutex; \</span></td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='directive'>int x = guard.loadAcquire(); \</span></td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='directive'>if (<span class='macro'>Q_UNLIKELY(x &gt;= QtGlobalStatic::Uninitialized)<span class='expansion'>__builtin_expect(!!(x &gt;= QtGlobalStatic::Uninitialized), false<br>)</span></span>) { \</span></td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> <span class='directive'>QMutexLocker locker(&amp;mutex); \</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> <span class='directive'>if (guard.load() == QtGlobalStatic::Uninitialized) { \</span></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='directive'>d = new Type ARGS; \</span></td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='directive'>static struct Cleanup { \</span></td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='directive'>~Cleanup() { \</span></td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='directive'>delete d; \</span></td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='directive'>guard.store(QtGlobalStatic::Destroyed); \</span></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> <span class='directive'>} cleanup; \</span></td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='directive'>guard.storeRelease(QtGlobalStatic::Initialized); \</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> <span class='directive'>return d; \</span></td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"><span class='comment'>// this class must be POD, unless the compiler supports thread-safe statics</span></td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T, T *(&amp;innerFunction)(), QBasicAtomicInt &amp;guard&gt;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='keyword'>struct</span> QGlobalStatic</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>typedef</span> T Type;</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>bool</span> isDestroyed() <span class='keyword'>const</span> { <span class='keyword'>return</span> guard.load() &lt;= QtGlobalStatic::Destroyed; }</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>bool</span> exists() <span class='keyword'>const</span> { <span class='keyword'>return</span> guard.load() == QtGlobalStatic::Initialized; }</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> <span class='keyword'>operator</span> Type *() { <span class='keyword'>if</span> (isDestroyed()) <span class='keyword'>return</span> 0; <span class='keyword'>return</span> innerFunction(); }</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> Type *<span class='keyword'>operator</span>()() { <span class='keyword'>if</span> (isDestroyed()) <span class='keyword'>return</span> 0; <span class='keyword'>return</span> innerFunction(); }</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> Type *<span class='keyword'>operator</span>-&gt;()</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='macro'>Q_ASSERT_X(!isDestroyed(), <span class='string_literal'>"Q_GLOBAL_STATIC"</span>, <span class='string_literal'>"The global static was used after being destroyed"</span>)<span class='expansion'>((!isDestroyed()) ? static_cast&lt;void&gt;(0) : qt_assert_x(<br>"Q_GLOBAL_STATIC", "The global static was used after being destroyed"<br>, "/usr/lib64/qt5/include/QtCore/qglobalstatic.h", 138))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span> innerFunction();</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> Type &amp;<span class='keyword'>operator</span>*()</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='macro'>Q_ASSERT_X(!isDestroyed(), <span class='string_literal'>"Q_GLOBAL_STATIC"</span>, <span class='string_literal'>"The global static was used after being destroyed"</span>)<span class='expansion'>((!isDestroyed()) ? static_cast&lt;void&gt;(0) : qt_assert_x(<br>"Q_GLOBAL_STATIC", "The global static was used after being destroyed"<br>, "/usr/lib64/qt5/include/QtCore/qglobalstatic.h", 143))</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:7ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>'?' condition is true</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='keyword'>return</span> *<span class="mrange"><span class="mrange">innerFunction()</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:15ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Calling 'innerFunction'</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:15ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Returned allocated memory</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"><span class='directive'>#define <span class='macro'>Q_GLOBAL_STATIC_WITH_ARGS(TYPE, NAME, ARGS)<span class='expansion'>namespace { namespace Q_QGS_NAME { typedef TYPE Type; QBasicAtomicInt<br> guard = { QtGlobalStatic::Uninitialized }; __attribute__((visibility<br>("hidden"))) inline Type *innerFunction() { struct HolderBase<br> { ~HolderBase() noexcept { if (guard.load() == QtGlobalStatic<br>::Initialized) guard.store(QtGlobalStatic::Destroyed); } }; static<br> struct Holder : public HolderBase { Type value; Holder() noexcept<br>(noexcept(Type ARGS)) : value ARGS { guard.store(QtGlobalStatic<br>::Initialized); } } holder; return &amp;holder.value; } } } static<br> QGlobalStatic&lt;TYPE, Q_QGS_NAME::innerFunction, Q_QGS_NAME<br>::guard&gt; NAME;</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> <span class='directive'>namespace { namespace Q_QGS_ ## NAME { \</span></td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='directive'>typedef TYPE Type; \</span></td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='directive'>QBasicAtomicInt guard = <span class='macro'>Q_BASIC_ATOMIC_INITIALIZER(QtGlobalStatic::Uninitialized)<span class='expansion'>{ QtGlobalStatic::Uninitialized }</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='directive'><span class='macro'>Q_GLOBAL_STATIC_INTERNAL(ARGS)<span class='expansion'>__attribute__((visibility("hidden"))) inline Type *innerFunction<br>() { struct HolderBase { ~HolderBase() noexcept { if (guard.load<br>() == QtGlobalStatic::Initialized) guard.store(QtGlobalStatic<br>::Destroyed); } }; static struct Holder : public HolderBase {<br> Type value; Holder() noexcept(noexcept(Type ARGS)) : value ARGS<br> { guard.store(QtGlobalStatic::Initialized); } } holder; return<br> &amp;holder.value; }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='directive'>} } \</span></td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='directive'>static QGlobalStatic&lt;TYPE, \</span></td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='directive'>Q_QGS_ ## NAME::innerFunction, \</span></td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='directive'>Q_QGS_ ## NAME::guard&gt; NAME;</span></td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"><span class='directive'>#define <span class='macro'>Q_GLOBAL_STATIC(TYPE, NAME)<span class='expansion'>namespace { namespace Q_QGS_NAME { typedef TYPE Type; QBasicAtomicInt<br> guard = { QtGlobalStatic::Uninitialized }; __attribute__((visibility<br>("hidden"))) inline Type *innerFunction() { struct HolderBase<br> { ~HolderBase() noexcept { if (guard.load() == QtGlobalStatic<br>::Initialized) guard.store(QtGlobalStatic::Destroyed); } }; static<br> struct Holder : public HolderBase { Type value; Holder() noexcept<br>(noexcept(Type ())) : value () { guard.store(QtGlobalStatic::<br>Initialized); } } holder; return &amp;holder.value; } } } static<br> QGlobalStatic&lt;TYPE, Q_QGS_NAME::innerFunction, Q_QGS_NAME<br>::guard&gt; NAME;</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='directive'><span class='macro'>Q_GLOBAL_STATIC_WITH_ARGS(TYPE, NAME, ())<span class='expansion'>namespace { namespace Q_QGS_NAME { typedef TYPE Type; QBasicAtomicInt<br> guard = { QtGlobalStatic::Uninitialized }; __attribute__((visibility<br>("hidden"))) inline Type *innerFunction() { struct HolderBase<br> { ~HolderBase() noexcept { if (guard.load() == QtGlobalStatic<br>::Initialized) guard.store(QtGlobalStatic::Destroyed); } }; static<br> struct Holder : public HolderBase { Type value; Holder() noexcept<br>(noexcept(Type ())) : value () { guard.store(QtGlobalStatic::<br>Initialized); } } holder; return &amp;holder.value; } } } static<br> QGlobalStatic&lt;TYPE, Q_QGS_NAME::innerFunction, Q_QGS_NAME<br>::guard&gt; NAME;</span></span></span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line">QT_END_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='directive'>#endif // QGLOBALSTATIC_H</span></td></tr>
</table><hr class=divider>
<div id=File12112>
<div class=FileNav><a href="#File5075">&#x2190;</a></div><h4 class=FileName>/usr/lib64/qt5/include/QtCore/qshareddata.h</h4>
</div>
<table class="code" data-fileid="12112">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/****************************************************************************</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"><span class='comment'>** Copyright (C) 2016 The Qt Company Ltd.</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"><span class='comment'>** Contact: https://www.qt.io/licensing/</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"><span class='comment'>** This file is part of the QtCore module of the Qt Toolkit.</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"><span class='comment'>** $QT_BEGIN_LICENSE:LGPL$</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"><span class='comment'>** Commercial License Usage</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"><span class='comment'>** Licensees holding valid commercial Qt licenses may use this file in</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"><span class='comment'>** accordance with the commercial license agreement provided with the</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"><span class='comment'>** Software or, alternatively, in accordance with the terms contained in</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"><span class='comment'>** a written agreement between you and The Qt Company. For licensing terms</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"><span class='comment'>** and conditions see https://www.qt.io/terms-conditions. For further</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"><span class='comment'>** information use the contact form at https://www.qt.io/contact-us.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"><span class='comment'>** GNU Lesser General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU Lesser</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"><span class='comment'>** General Public License version 3 as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.LGPL3 included in the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"><span class='comment'>** packaging of this file. Please review the following information to</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"><span class='comment'>** ensure the GNU Lesser General Public License version 3 requirements</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"><span class='comment'>** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='comment'>** GNU General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"><span class='comment'>** General Public License version 2.0 or (at your option) the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>** Public license version 3 or any later version approved by the KDE Free</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='comment'>** Qt Foundation. The licenses are as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>** included in the packaging of this file. Please review the following</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='comment'>** information to ensure the GNU General Public License requirements will</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>** be met: https://www.gnu.org/licenses/gpl-2.0.html and</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='comment'>** https://www.gnu.org/licenses/gpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>** $QT_END_LICENSE$</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>****************************************************************************/</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#ifndef QSHAREDDATA_H</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#define QSHAREDDATA_H</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;QtCore/qglobal.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include &lt;QtCore/qatomic.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#if <span class='macro'>QT_DEPRECATED_SINCE(5, 6)<span class='expansion'>(((5&lt;&lt;16)|(6&lt;&lt;8)|(0)) &gt; ((5&lt;&lt;16)|(0&lt;&lt;<br>8)|(0)))</span></span></span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include &lt;QtCore/qhash.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include &lt;QtCore/qhashfunctions.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line">QT_BEGIN_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>class</span> QSharedDataPointer;</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_CORE_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QSharedData</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> <span class='keyword'>mutable</span> QAtomicInt ref;</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>inline</span> QSharedData() : ref(0) { }</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> <span class='keyword'>inline</span> QSharedData(<span class='keyword'>const</span> QSharedData &amp;) : ref(0) { }</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='comment'>// using the assignment operator would lead to corruption in the ref-counting</span></td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> QSharedData &amp;<span class='keyword'>operator</span>=(<span class='keyword'>const</span> QSharedData &amp;);</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>class</span> QSharedDataPointer</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='keyword'>typedef</span> T Type;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>typedef</span> T *pointer;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>void</span> detach() { <span class='keyword'>if</span> (d &amp;&amp; d-&gt;ref.load() != 1) <span class="mrange"><span class="mrange">detach_helper()</span></span>; }</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:28ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:57ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Calling 'QSharedDataPointer::detach_helper'</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:57ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Returning; memory was released</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>inline</span> T &amp;<span class='keyword'>operator</span>*() { detach(); <span class='keyword'>return</span> *d; }</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T &amp;<span class='keyword'>operator</span>*() <span class='keyword'>const</span> { <span class='keyword'>return</span> *d; }</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>inline</span> T *<span class='keyword'>operator</span>-&gt;() { detach(); <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T *<span class='keyword'>operator</span>-&gt;() <span class='keyword'>const</span> { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>operator</span> T *() { <span class="mrange"><span class="mrange">detach()</span></span>; <span class='keyword'>return</span> d; }</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:29ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Calling 'QSharedDataPointer::detach'</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgEvent" style="margin-left:29ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Returning; memory was released</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>operator</span> <span class='keyword'>const</span> T *() <span class='keyword'>const</span> { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='keyword'>inline</span> T *data() { detach(); <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T *data() <span class='keyword'>const</span> { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T *constData() <span class='keyword'>const</span> { <span class='keyword'>return</span> <span class="mrange">d</span>; }</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:41ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Use of memory after it is freed</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;other) <span class='keyword'>const</span> { <span class='keyword'>return</span> d == other.d; }</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(<span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;other) <span class='keyword'>const</span> { <span class='keyword'>return</span> d != other.d; }</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='keyword'>inline</span> QSharedDataPointer() { d = <span class='keyword'>nullptr</span>; }</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>inline</span> ~QSharedDataPointer() { <span class='keyword'>if</span> (d &amp;&amp; !d-&gt;ref.deref()) <span class='keyword'>delete</span> d; }</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='keyword'>explicit</span> QSharedDataPointer(T *data) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span>;</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>inline</span> QSharedDataPointer(<span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;o) : d(o.d) { <span class='keyword'>if</span> (d) d-&gt;ref.ref(); }</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='keyword'>inline</span> QSharedDataPointer&lt;T&gt; &amp; <span class='keyword'>operator</span>=(<span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;o) {</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class='keyword'>if</span> (o.d != d) {</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='keyword'>if</span> (o.d)</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> o.d-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> T *old = d;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> d = o.d;</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>if</span> (old &amp;&amp; !old-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>delete</span> old;</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='keyword'>inline</span> QSharedDataPointer &amp;<span class='keyword'>operator</span>=(T *o) {</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>if</span> (o != d) {</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> <span class='keyword'>if</span> (o)</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> o-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> T *old = d;</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d = o;</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> <span class='keyword'>if</span> (old &amp;&amp; !old-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> <span class='keyword'>delete</span> old;</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"><span class='directive'>#ifdef Q_COMPILER_RVALUE_REFS</span></td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> QSharedDataPointer(QSharedDataPointer &amp;&amp;o) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span> : d(o.d) { o.d = <span class='keyword'>nullptr</span>; }</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>inline</span> QSharedDataPointer&lt;T&gt; &amp;<span class='keyword'>operator</span>=(QSharedDataPointer&lt;T&gt; &amp;&amp;other) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> QSharedDataPointer moved(std::move(other));</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> swap(moved);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!() <span class='keyword'>const</span> { <span class='keyword'>return</span> !d; }</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>void</span> swap(QSharedDataPointer &amp;other) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> { qSwap(d, other.d); }</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"><span class='keyword'>protected</span>:</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> T *clone();</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> <span class='keyword'>void</span> detach_helper();</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> T *d;</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(std::nullptr_t p1, <span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;p2)</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='macro'>Q_UNUSED(p1)<span class='expansion'>(void)p1;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>return</span> !p2;</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;p1, std::nullptr_t p2)</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='macro'>Q_UNUSED(p2)<span class='expansion'>(void)p2;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='keyword'>return</span> !p1;</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>class</span> QExplicitlySharedDataPointer</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='keyword'>typedef</span> T Type;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>typedef</span> T *pointer;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='keyword'>inline</span> T &amp;<span class='keyword'>operator</span>*() <span class='keyword'>const</span> { <span class='keyword'>return</span> *d; }</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='keyword'>inline</span> T *<span class='keyword'>operator</span>-&gt;() { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>inline</span> T *<span class='keyword'>operator</span>-&gt;() <span class='keyword'>const</span> { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='keyword'>inline</span> T *data() <span class='keyword'>const</span> { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>const</span> T *constData() <span class='keyword'>const</span> { <span class='keyword'>return</span> d; }</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='keyword'>inline</span> T *take() { T *x = d; d = <span class='keyword'>nullptr</span>; <span class='keyword'>return</span> x; }</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>void</span> detach() { <span class='keyword'>if</span> (d &amp;&amp; d-&gt;ref.load() != 1) detach_helper(); }</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>void</span> reset()</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='keyword'>if</span>(d &amp;&amp; !d-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> d = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>operator</span> <span class='keyword'>bool</span> () <span class='keyword'>const</span> { <span class='keyword'>return</span> d != <span class='keyword'>nullptr</span>; }</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;other) <span class='keyword'>const</span> { <span class='keyword'>return</span> d == other.d; }</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;other) <span class='keyword'>const</span> { <span class='keyword'>return</span> d != other.d; }</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> T *ptr) <span class='keyword'>const</span> { <span class='keyword'>return</span> d == ptr; }</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!=(<span class='keyword'>const</span> T *ptr) <span class='keyword'>const</span> { <span class='keyword'>return</span> d != ptr; }</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer() { d = <span class='keyword'>nullptr</span>; }</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='keyword'>inline</span> ~QExplicitlySharedDataPointer() { <span class='keyword'>if</span> (d &amp;&amp; !d-&gt;ref.deref()) <span class='keyword'>delete</span> d; }</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>explicit</span> QExplicitlySharedDataPointer(T *data) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span>;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;o) : d(o.d) { <span class='keyword'>if</span> (d) d-&gt;ref.ref(); }</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='keyword'>template</span>&lt;<span class='keyword'>class</span> X&gt;</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;X&gt; &amp;o)</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"><span class='directive'>#ifdef QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST</span></td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> : d(<span class='keyword'>static_cast</span>&lt;T *&gt;(o.data()))</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> : d(o.data())</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> <span class='keyword'>if</span>(d)</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> d-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer&lt;T&gt; &amp; <span class='keyword'>operator</span>=(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;o) {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>if</span> (o.d != d) {</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> <span class='keyword'>if</span> (o.d)</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> o.d-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> T *old = d;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> d = o.d;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='keyword'>if</span> (old &amp;&amp; !old-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>delete</span> old;</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer &amp;<span class='keyword'>operator</span>=(T *o) {</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='keyword'>if</span> (o != d) {</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>if</span> (o)</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> o-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> T *old = d;</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> d = o;</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>if</span> (old &amp;&amp; !old-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> <span class='keyword'>delete</span> old;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='directive'>#ifdef Q_COMPILER_RVALUE_REFS</span></td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer(QExplicitlySharedDataPointer &amp;&amp;o) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span> : d(o.d) { o.d = <span class='keyword'>nullptr</span>; }</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>inline</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;<span class='keyword'>operator</span>=(QExplicitlySharedDataPointer&lt;T&gt; &amp;&amp;other) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> QExplicitlySharedDataPointer moved(std::move(other));</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> swap(moved);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>!() <span class='keyword'>const</span> { <span class='keyword'>return</span> !d; }</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>void</span> swap(QExplicitlySharedDataPointer &amp;other) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> { qSwap(d, other.d); }</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"><span class='keyword'>protected</span>:</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> T *clone();</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"><span class='keyword'>private</span>:</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='keyword'>void</span> detach_helper();</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> T *d;</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> QSharedDataPointer&lt;T&gt;::QSharedDataPointer(T *adata) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> : d(adata)</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line">{ <span class='keyword'>if</span> (d) d-&gt;ref.ref(); }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> T *QSharedDataPointer&lt;T&gt;::clone()</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>new</span> T(*d);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line">Q_OUTOFLINE_TEMPLATE <span class='keyword'>void</span> QSharedDataPointer&lt;T&gt;::detach_helper()</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> T *x = clone();</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> x-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;ref.deref())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class="mrange"><span class='keyword'>delete</span> d</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Memory is released</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> d = x;</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> T *QExplicitlySharedDataPointer&lt;T&gt;::clone()</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>new</span> T(*d);</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line">Q_OUTOFLINE_TEMPLATE <span class='keyword'>void</span> QExplicitlySharedDataPointer&lt;T&gt;::detach_helper()</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> T *x = clone();</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> x-&gt;ref.ref();</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;ref.deref())</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> d = x;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> QExplicitlySharedDataPointer&lt;T&gt;::QExplicitlySharedDataPointer(T *adata) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> : d(adata)</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line">{ <span class='keyword'>if</span> (d) d-&gt;ref.ref(); }</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(std::nullptr_t p1, <span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;p2)</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='macro'>Q_UNUSED(p1)<span class='expansion'>(void)p1;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> <span class='keyword'>return</span> !p2;</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt; <span class='keyword'>inline</span> <span class='keyword'>bool</span> <span class='keyword'>operator</span>==(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;p1, std::nullptr_t p2)</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='macro'>Q_UNUSED(p2)<span class='expansion'>(void)p2;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> <span class='keyword'>return</span> !p1;</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> <span class='keyword'>void</span> qSwap(QSharedDataPointer&lt;T&gt; &amp;p1, QSharedDataPointer&lt;T&gt; &amp;p2)</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line">{ p1.swap(p2); }</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> <span class='keyword'>void</span> qSwap(QExplicitlySharedDataPointer&lt;T&gt; &amp;p1, QExplicitlySharedDataPointer&lt;T&gt; &amp;p2)</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line">{ p1.swap(p2); }</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line">QT_END_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"><span class='keyword'>namespace</span> std {</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> <span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> <span class='keyword'>void</span> swap(<span class='macro'>QT_PREPEND_NAMESPACE(QSharedDataPointer)<span class='expansion'>::QSharedDataPointer</span></span>&lt;T&gt; &amp;p1, <span class='macro'>QT_PREPEND_NAMESPACE(QSharedDataPointer)<span class='expansion'>::QSharedDataPointer</span></span>&lt;T&gt; &amp;p2)</td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> { p1.swap(p2); }</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> <span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> <span class='keyword'>void</span> swap(<span class='macro'>QT_PREPEND_NAMESPACE(QExplicitlySharedDataPointer)<span class='expansion'>::QExplicitlySharedDataPointer</span></span>&lt;T&gt; &amp;p1, <span class='macro'>QT_PREPEND_NAMESPACE(QExplicitlySharedDataPointer)<span class='expansion'>::QExplicitlySharedDataPointer</span></span>&lt;T&gt; &amp;p2)</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> { p1.swap(p2); }</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line">QT_BEGIN_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> uint qHash(<span class='keyword'>const</span> QSharedDataPointer&lt;T&gt; &amp;ptr, uint seed = 0) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> <span class='keyword'>return</span> qHash(ptr.data(), seed);</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"><span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"><span class='macro'>Q_INLINE_TEMPLATE<span class='expansion'>inline</span></span> uint qHash(<span class='keyword'>const</span> QExplicitlySharedDataPointer&lt;T&gt; &amp;ptr, uint seed = 0) <span class='macro'>Q_DECL_NOTHROW<span class='expansion'>noexcept</span></span></td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> <span class='keyword'>return</span> qHash(ptr.data(), seed);</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"><span class='keyword'>template</span>&lt;<span class='keyword'>typename</span> T&gt; <span class='macro'>Q_DECLARE_TYPEINFO_BODY(QSharedDataPointer&lt;T&gt;, Q_MOVABLE_TYPE)<span class='expansion'>class QTypeInfo&lt;QSharedDataPointer&lt;T&gt; &gt; { public:<br> enum { isSpecialized = true, isComplex = (((Q_MOVABLE_TYPE) &amp;<br> Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) &amp;<br> (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isRelocatable = !<br>isStatic || ((Q_MOVABLE_TYPE) &amp; Q_RELOCATABLE_TYPE), isLarge<br> = (sizeof(QSharedDataPointer&lt;T&gt;)&gt;sizeof(void*)), isPointer<br> = false, isIntegral = std::is_integral&lt; QSharedDataPointer<br>&lt;T&gt; &gt;::value, isDummy = (((Q_MOVABLE_TYPE) &amp; Q_DUMMY_TYPE<br>) != 0), sizeOf = sizeof(QSharedDataPointer&lt;T&gt;) }; static<br> inline const char *name() { return "QSharedDataPointer&lt;T&gt;"<br>; } }</span></span>;</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"><span class='keyword'>template</span>&lt;<span class='keyword'>typename</span> T&gt; <span class='macro'>Q_DECLARE_TYPEINFO_BODY(QExplicitlySharedDataPointer&lt;T&gt;, Q_MOVABLE_TYPE)<span class='expansion'>class QTypeInfo&lt;QExplicitlySharedDataPointer&lt;T&gt; &gt;<br> { public: enum { isSpecialized = true, isComplex = (((Q_MOVABLE_TYPE<br>) &amp; Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE<br>) &amp; (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isRelocatable<br> = !isStatic || ((Q_MOVABLE_TYPE) &amp; Q_RELOCATABLE_TYPE), isLarge<br> = (sizeof(QExplicitlySharedDataPointer&lt;T&gt;)&gt;sizeof(void<br>*)), isPointer = false, isIntegral = std::is_integral&lt; QExplicitlySharedDataPointer<br>&lt;T&gt; &gt;::value, isDummy = (((Q_MOVABLE_TYPE) &amp; Q_DUMMY_TYPE<br>) != 0), sizeOf = sizeof(QExplicitlySharedDataPointer&lt;T&gt;<br>) }; static inline const char *name() { return "QExplicitlySharedDataPointer&lt;T&gt;"<br>; } }</span></span>;</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line">QT_END_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"><span class='directive'>#endif // QSHAREDDATA_H</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-2c5d63.html b/static/reports/clang/master/report-8ca31f.html
similarity index 92%
rename from static/reports/clang/master/report-2c5d63.html
rename to static/reports/clang/master/report-8ca31f.html
index 87a4d03b9..72ec32e46 100644
--- a/static/reports/clang/master/report-2c5d63.html
+++ b/static/reports/clang/master/report-8ca31f.html
@@ -1,1106 +1,1107 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Division by zero -->
<!-- BUGTYPE Division by zero -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp -->
<!-- FILENAME dimgtiffloader_load.cpp -->
<!-- FUNCTIONNAME load -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT f65b740485177ea6ed474166624dde1d -->
-<!-- BUGLINE 494 -->
+<!-- BUGLINE 495 -->
<!-- BUGCOLUMN 25 -->
<!-- BUGPATHLENGTH 61 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</td></tr>
-<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 494, column 25</a><br />Division by zero</td></tr>
+<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 495, column 25</a><br />Division by zero</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimgtiffloader_load.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -D DImg_TIFF_Plugin_EXPORTS -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CORE_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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff/DImg_TIFF_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimgtiffloader_load.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -D DImg_TIFF_Plugin_EXPORTS -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CORE_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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff/DImg_TIFF_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
-var relevant_lines = {"1": {"50": 1, "51": 1, "52": 1, "61": 1, "64": 1, "69": 1, "71": 1, "78": 1, "86": 1, "87": 1, "88": 1, "89": 1, "90": 1, "91": 1, "92": 1, "93": 1, "95": 1, "96": 1, "98": 1, "99": 1, "100": 1, "102": 1, "111": 1, "116": 1, "117": 1, "118": 1, "138": 1, "140": 1, "155": 1, "157": 1, "164": 1, "165": 1, "166": 1, "196": 1, "202": 1, "205": 1, "207": 1, "217": 1, "239": 1, "241": 1, "243": 1, "248": 1, "249": 1, "251": 1, "414": 1, "416": 1, "417": 1, "419": 1, "427": 1, "428": 1, "429": 1, "430": 1, "432": 1, "434": 1, "441": 1, "443": 1, "451": 1, "453": 1, "459": 1, "460": 1, "462": 1, "467": 1, "469": 1, "483": 1, "485": 1, "493": 1, "494": 1, "499": 1, "500": 1, "501": 1, "503": 1, "519": 1, "521": 1, "544": 1}, "517": {"88": 1, "89": 1, "90": 1}, "4673": {"68": 1, "71": 1, "122": 1, "137": 1, "145": 1}, "4802": {"103": 1}, "4805": {"224": 1, "225": 1, "226": 1, "227": 1}, "4963": {"109": 1, "110": 1, "111": 1}, "4965": {"79": 1, "80": 1, "81": 1, "82": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "12385": {"67": 1, "68": 1, "73": 1, "75": 1, "100": 1, "101": 1, "121": 1, "122": 1, "123": 1, "138": 1, "139": 1, "140": 1, "148": 1, "149": 1, "150": 1, "153": 1, "154": 1, "155": 1, "157": 1, "158": 1, "159": 1, "229": 1, "232": 1, "233": 1, "234": 1}, "15549": {"61": 1}};
+var relevant_lines = {"1": {"50": 1, "51": 1, "52": 1, "61": 1, "64": 1, "69": 1, "71": 1, "78": 1, "86": 1, "87": 1, "88": 1, "89": 1, "90": 1, "91": 1, "92": 1, "93": 1, "95": 1, "96": 1, "98": 1, "99": 1, "100": 1, "102": 1, "111": 1, "116": 1, "117": 1, "118": 1, "138": 1, "140": 1, "155": 1, "157": 1, "164": 1, "165": 1, "166": 1, "196": 1, "202": 1, "205": 1, "207": 1, "217": 1, "239": 1, "241": 1, "243": 1, "248": 1, "249": 1, "251": 1, "414": 1, "416": 1, "417": 1, "419": 1, "427": 1, "428": 1, "429": 1, "430": 1, "432": 1, "434": 1, "441": 1, "443": 1, "451": 1, "453": 1, "459": 1, "460": 1, "462": 1, "467": 1, "469": 1, "483": 1, "485": 1, "493": 1, "494": 1, "495": 1, "500": 1, "501": 1, "502": 1, "504": 1, "520": 1, "522": 1, "545": 1}, "517": {"88": 1, "89": 1, "90": 1}, "4673": {"68": 1, "71": 1, "122": 1, "137": 1, "145": 1}, "4802": {"103": 1}, "4805": {"224": 1, "225": 1, "226": 1, "227": 1}, "4963": {"109": 1, "110": 1, "111": 1}, "4965": {"79": 1, "80": 1, "81": 1, "82": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "12385": {"67": 1, "68": 1, "73": 1, "75": 1, "100": 1, "101": 1, "121": 1, "122": 1, "123": 1, "138": 1, "139": 1, "140": 1, "148": 1, "149": 1, "150": 1, "153": 1, "154": 1, "155": 1, "157": 1, "158": 1, "159": 1, "229": 1, "232": 1, "233": 1, "234": 1}, "15549": {"61": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-17</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A TIFF IO file for DImg framework - load operations</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='comment'>// C ANSI includes</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='keyword'>extern</span> <span class='string_literal'>"C"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;tiffvers.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;cstdio&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QFile&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include &lt;QByteArray&gt;</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "digikam_config.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "dimgloaderobserver.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dimgtiffloader.h" //krazy:exclude=includes</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='keyword'>namespace</span> DigikamTIFFDImgPlugin</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='keyword'>bool</span> DImgTIFFLoader::load(<span class='keyword'>const</span> QString&amp; filePath, DImgLoaderObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> readMetadata(filePath);</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='comment'>// TIFF error handling. If an errors/warnings occurs during reading,</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> <span class='comment'>// libtiff will call these methods</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='directive'>#ifdef Q_OS_WIN</span></td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> TIFFSetWarningHandler(<span class='macro'>NULL<span class='expansion'>__null</span></span>);</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> TIFFSetWarningHandler(dimg_tiff_warning);</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> TIFFSetErrorHandler(dimg_tiff_error);</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='comment'>// Open the file</span></td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> TIFF* <span class='keyword'>const</span> tif = TIFFOpen(QFile::encodeName(filePath).constData(), <span class='string_literal'>"r"</span>);</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!tif</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming 'tif' is non-null</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 73, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Cannot open image file."</span>;</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>if</span> (DIGIKAM_DIMG_LOG_TIFF().isDebugEnabled())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> TIFFPrintDirectory(tif, <span class='macro'>stdout<span class='expansion'>stdout</span></span>, 0);</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='comment'>// Get image information.</span></td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> uint32 w, h;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> uint16 bits_per_sample;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> uint16 samples_per_pixel;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> uint16 photometric;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> uint16 planar_config;</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> uint32 rows_per_strip;</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> tsize_t strip_size;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> tstrip_t num_of_strips;</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_IMAGEWIDTH<span class='expansion'>256</span></span>, &amp;w);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_IMAGELENGTH<span class='expansion'>257</span></span>, &amp;h);</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_BITSPERSAMPLE<span class='expansion'>258</span></span>, &amp;bits_per_sample);</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_SAMPLESPERPIXEL<span class='expansion'>277</span></span>, &amp;samples_per_pixel);</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_PLANARCONFIG<span class='expansion'>284</span></span>, &amp;planar_config);</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_ROWSPERSTRIP<span class='expansion'>278</span></span>, &amp;rows_per_strip) == 0</span> || <span class="mrange">rows_per_strip == 0</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:83ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming 'rows_per_strip' is not equal to 0</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 104, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"TIFF loader: Cannot handle non-stripped images. Loading file "</span></td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">rows_per_strip &gt; h</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Assuming 'rows_per_strip' is &lt;= 'h'</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> rows_per_strip = h;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>if</span> ( <span class="mrange">bits_per_sample == 0</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Assuming 'bits_per_sample' is not equal to 0</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> || <span class="mrange">samples_per_pixel == 0</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Assuming 'samples_per_pixel' is not equal to 0</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> || rows_per_strip == 0</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"><span class='comment'>// || rows_per_strip &gt; h</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> )</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 122, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"TIFF loader: Encountered invalid value in image."</span> &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> &lt;&lt; <span class='string_literal'>" bits_per_sample : "</span> &lt;&lt; bits_per_sample &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> &lt;&lt; <span class='string_literal'>" samples_per_pixel : "</span> &lt;&lt; samples_per_pixel &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> &lt;&lt; <span class='string_literal'>" rows_per_strip : "</span> &lt;&lt; rows_per_strip &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> &lt;&lt; <span class='string_literal'>" h : "</span> &lt;&lt; h &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> &lt;&lt; <span class='string_literal'>" Loading file : "</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='comment'>// TODO: check others TIFF color-spaces here. Actually, only RGB, PALETTE and MINISBLACK</span></td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> <span class='comment'>// have been tested.</span></td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> <span class='comment'>// Complete description of TIFFTAG_PHOTOMETRIC tag can be found at this url:</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> <span class='comment'>// http://www.awaresystems.be/imaging/tiff/tifftags/photometricinterpretation.html</span></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_PHOTOMETRIC<span class='expansion'>262</span></span>, &amp;photometric);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">photometric != <span class='macro'>PHOTOMETRIC_RGB<span class='expansion'>2</span></span></span> &amp;&amp;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Assuming 'photometric' is equal to PHOTOMETRIC_RGB</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> photometric != <span class='macro'>PHOTOMETRIC_PALETTE<span class='expansion'>3</span></span> &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> photometric != <span class='macro'>PHOTOMETRIC_MINISWHITE<span class='expansion'>0</span></span> &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> photometric != <span class='macro'>PHOTOMETRIC_MINISBLACK<span class='expansion'>1</span></span> &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> ((photometric != <span class='macro'>PHOTOMETRIC_YCBCR<span class='expansion'>6</span></span>) | (bits_per_sample != 8)) &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> ((photometric != <span class='macro'>PHOTOMETRIC_SEPARATED<span class='expansion'>5</span></span>) | (bits_per_sample != 8)) &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> (m_loadFlags &amp; LoadImageData))</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 148, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Can not handle image without RGB color-space: "</span></td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> &lt;&lt; photometric;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>int</span> colorModel = DImg::COLORMODELUNKNOWN;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='keyword'>switch</span> (photometric)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Control jumps to 'case 2:' at line 164</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_MINISWHITE<span class='expansion'>0</span></span>:</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_MINISBLACK<span class='expansion'>1</span></span>:</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> colorModel = DImg::GRAYSCALE;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_RGB<span class='expansion'>2</span></span>:</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> colorModel = DImg::RGB;</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td> Execution continues on line 196</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_PALETTE<span class='expansion'>3</span></span>:</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> colorModel = DImg::INDEXED;</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_MASK<span class='expansion'>4</span></span>:</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> colorModel = DImg::MONOCHROME;</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_SEPARATED<span class='expansion'>5</span></span>:</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> colorModel = DImg::CMYK;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_YCBCR<span class='expansion'>6</span></span>:</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> colorModel = DImg::YCBCR;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_CIELAB<span class='expansion'>8</span></span>:</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_ICCLAB<span class='expansion'>9</span></span>:</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_ITULAB<span class='expansion'>10</span></span>:</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> colorModel = DImg::CIELAB;</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_LOGL<span class='expansion'>32844</span></span>:</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_LOGLUV<span class='expansion'>32845</span></span>:</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> colorModel = DImg::COLORMODELRAW;</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">samples_per_pixel == 4</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Assuming 'samples_per_pixel' is not equal to 4</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> m_hasAlpha = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> m_hasAlpha = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">bits_per_sample == 16</span> || <span class="mrange">bits_per_sample == 32</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Assuming 'bits_per_sample' is not equal to 16</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:34ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Assuming 'bits_per_sample' is equal to 32</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> m_sixteenBit = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> m_sixteenBit = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> <span class='comment'>// Read image ICC profile</span></td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadICCData</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> uchar* profile_data = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> uint32 profile_size;</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>if</span> (TIFFGetField(tif, <span class='macro'>TIFFTAG_ICCPROFILE<span class='expansion'>34675</span></span>, &amp;profile_size, &amp;profile_data))</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> QByteArray profile_rawdata;</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> profile_rawdata.resize(profile_size);</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> memcpy(profile_rawdata.data(), profile_data, profile_size);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> imageSetIccProfile(IccProfile(profile_rawdata));</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='comment'>// If ICC profile is null, check Exif metadata.</span></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> checkExifWorkingColorSpace();</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='comment'>// Get image data.</span></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; data;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadImageData</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">observer</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Assuming 'observer' is null</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1F);</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> strip_size = TIFFStripSize(tif);</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> num_of_strips = TIFFNumberOfStrips(tif);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>if</span> (bits_per_sample == 16) <span class='comment'>// 16 bits image.</span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> data.reset(new_failureTolerant(w, h, 8));</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(strip_size));</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 258, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='keyword'>long</span> bytesRead = 0;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> uint checkpoint = 0;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='keyword'>for</span> (tstrip_t st = 0 ; st &lt; num_of_strips ; ++st)</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; st == checkpoint)</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> checkpoint += granularity(observer, num_of_strips, 0.8F);</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)st) / ((<span class='keyword'>float</span>)num_of_strips))));</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> bytesRead = TIFFReadEncodedStrip(tif, st, strip.data(), strip_size);</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> <span class='keyword'>if</span> (bytesRead == -1)</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 288, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read strip"</span>;</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> <span class='keyword'>if</span> ((planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>) &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> (st % (num_of_strips / samples_per_pixel)) == 0)</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> offset = 0;</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> ushort* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(strip.data());</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> ushort* dataPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(data.data() + offset);</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> ushort* p;</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> <span class='comment'>// tiff data is read as BGR or ABGR or Greyscale</span></td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (samples_per_pixel == 1) <span class='comment'>// See bug #148400: Greyscale pictures only have _one_ sample per pixel</span></td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 2 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> <span class='comment'>// We have to read two bytes for one pixel</span></td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> p[0] = *stripPtr; <span class='comment'>// RGB have to be set to the _same_ value</span></td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> p[1] = *stripPtr;</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> p[3] = 0xFFFF; <span class='comment'>// set alpha to 100%</span></td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> offset += bytesRead * 4; <span class='comment'>// The _byte_offset in the data array is, of course, four times bytesRead</span></td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 6 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> p[3] = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> offset += bytesRead / 6 * 8;</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 2 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> p[3] = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> offset += bytesRead / 2 * 8;</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 8 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> p[3] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> offset += bytesRead;</td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 2 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> <span class='keyword'>case</span> 3:</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> p[3] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> offset += bytesRead / 2 * 8;</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (bits_per_sample == 32) <span class='comment'>// 32 bits image.</span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:14ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> data.reset(new_failureTolerant(w, h, 8));</td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(strip_size));</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 421, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>long</span> bytesRead = 0;</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> uint checkpoint = 0;</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> <span class='keyword'>float</span> maxValue = 0.0;</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> <span class='keyword'>for</span> (tstrip_t st = 0 ; <span class="mrange"><span class="mrange"><span class="mrange">st &lt; num_of_strips</span></span></span> ; ++st)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:36ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming 'st' is &lt; 'num_of_strips'</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgEvent" style="margin-left:36ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Assuming 'st' is &lt; 'num_of_strips'</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgEvent" style="margin-left:36ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Assuming 'st' is &gt;= 'num_of_strips'</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 459</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; !observer-&gt;continueQuery(m_image))</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> bytesRead = TIFFReadEncodedStrip(tif, st, strip.data(), strip_size);</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange"><span class="mrange">bytesRead == -1</span></span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 445, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read strip"</span>;</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> <span class='keyword'>float</span>* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>float</span>*&gt;(strip.data());</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; <span class="mrange"><span class="mrange">i &lt; bytesRead / 4</span></span> ; ++i)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:34ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 432</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgEvent" style="margin-left:34ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 432</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> maxValue = qMax(maxValue, *stripPtr++);</td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> <span class='keyword'>double</span> factor = (maxValue &gt; 10.0) ? log10(maxValue) * 1.5 : 1.0;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgControl" style="margin-left:29ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>'?' condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> <span class='keyword'>double</span> scale = (factor &gt; 1.0) ? 0.75 : 1.0;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:29ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>'?' condition is false</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> <span class='keyword'>if</span> (factor &gt; 1.0)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path47" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 464, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"TIFF image cannot be converted lossless from 32 to 16 bits"</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> <span class='keyword'>for</span> (tstrip_t st = 0 ; st &lt; num_of_strips ; ++st)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path47" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path48" title="Next event (48)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path58" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">58</div></td><td><div class="PathNav"><a href="#Path57" title="Previous event (57)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path59" title="Next event (59)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; st == checkpoint)</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> checkpoint += granularity(observer, num_of_strips, 0.8F);</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)st) / ((<span class='keyword'>float</span>)num_of_strips))));</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> bytesRead = TIFFReadEncodedStrip(tif, st, strip.data(), strip_size);</td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange"><span class="mrange">bytesRead == -1</span></span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path48" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">48</div></td><td><div class="PathNav"><a href="#Path47" title="Previous event (47)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path49" title="Next event (49)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path49" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">49</div></td><td><div class="PathNav"><a href="#Path48" title="Previous event (48)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path50" title="Next event (50)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path59" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">59</div></td><td><div class="PathNav"><a href="#Path58" title="Previous event (58)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path60" title="Next event (60)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path60" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">60</div></td><td><div class="PathNav"><a href="#Path59" title="Previous event (59)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#EndPath" title="Next event (61)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 487, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read strip"</span>;</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span></span>) &amp;&amp;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path50" class="msg msgEvent" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">50</div></td><td><div class="PathNav"><a href="#Path49" title="Previous event (49)">&#x2190;</a></div></td></td><td>Assuming 'planar_config' is equal to PLANARCONFIG_SEPARATE</td><td><div class="PathNav"><a href="#Path51" title="Next event (51)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path52" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">52</div></td><td><div class="PathNav"><a href="#Path51" title="Previous event (51)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path53" title="Next event (53)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> <span class="mrange">(<span class="mrange">st % (num_of_strips / samples_per_pixel)</span>) == 0</span>)</td></tr>
+<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> (samples_per_pixel != 0) &amp;&amp;</td></tr>
+<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> <span class="mrange">(<span class="mrange">st % (num_of_strips / samples_per_pixel)</span>) == 0</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path51" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">51</div></td><td><div class="PathNav"><a href="#Path50" title="Previous event (50)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path52" title="Next event (52)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:25ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">61</div></td><td><div class="PathNav"><a href="#Path60" title="Previous event (60)">&#x2190;</a></div></td></td><td>Division by zero</td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> offset = 0;</td></tr>
-<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> <span class='keyword'>float</span>* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>float</span>*&gt;(strip.data());</td></tr>
-<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> ushort* dataPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(data.data() + offset);</td></tr>
-<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> ushort* p = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">samples_per_pixel == 3</span>) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> offset = 0;</td></tr>
+<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> <span class='keyword'>float</span>* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>float</span>*&gt;(strip.data());</td></tr>
+<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> ushort* dataPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(data.data() + offset);</td></tr>
+<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> ushort* p = <span class='keyword'>nullptr</span>;</td></tr>
+<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">samples_per_pixel == 3</span>) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path53" class="msg msgEvent" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">53</div></td><td><div class="PathNav"><a href="#Path52" title="Previous event (52)">&#x2190;</a></div></td></td><td>Assuming 'samples_per_pixel' is equal to 3</td><td><div class="PathNav"><a href="#Path54" title="Next event (54)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path54" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">54</div></td><td><div class="PathNav"><a href="#Path53" title="Previous event (53)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path55" title="Next event (55)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 12 ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> p[3] = 0xFFFF;</td></tr>
-<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> offset += bytesRead / 12 * 8;</td></tr>
-<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 12 ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> p[3] = 0xFFFF;</td></tr>
+<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> offset += bytesRead / 12 * 8;</td></tr>
+<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path55" class="msg msgControl" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">55</div></td><td><div class="PathNav"><a href="#Path54" title="Previous event (54)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path56" title="Next event (56)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; <span class="mrange">i &lt; bytesRead / 4</span> ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; <span class="mrange">i &lt; bytesRead / 4</span> ; ++i)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path56" class="msg msgEvent" style="margin-left:38ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">56</div></td><td><div class="PathNav"><a href="#Path55" title="Previous event (55)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path57" title="Next event (57)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path57" class="msg msgControl" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">57</div></td><td><div class="PathNav"><a href="#Path56" title="Previous event (56)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 544</td><td><div class="PathNav"><a href="#Path58" title="Next event (58)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
-<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
-<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> p[3] = 0xFFFF;</td></tr>
-<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
-<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
-<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
-<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
-<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 16 ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> offset += bytesRead / 16 * 8;</td></tr>
-<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
-<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 4 ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
-<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
-<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
-<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
-<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='keyword'>case</span> 3:</td></tr>
-<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
-<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// Non 16 or 32 bits images ==&gt; get it on BGRA 8 bits.</span></td></tr>
-<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line"> data.reset(new_failureTolerant(w, h, 4));</td></tr>
-<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(w, rows_per_strip, 4));</td></tr>
-<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
-<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 601, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
-<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
-<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> <span class='keyword'>long</span> pixelsRead = 0;</td></tr>
-<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='comment'>// this is inspired by TIFFReadRGBAStrip, tif_getimage.c</span></td></tr>
-<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> <span class='keyword'>char</span> emsg[1024] = <span class='string_literal'>""</span>;</td></tr>
-<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> uint32 rows_to_read = 0;</td></tr>
-<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> uint checkpoint = 0;</td></tr>
-<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> TIFFRGBAImage img;</td></tr>
-<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> <span class='comment'>// test whether libtiff can read format and initiate reading</span></td></tr>
-<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='keyword'>if</span> (!TIFFRGBAImageOK(tif, emsg) || !TIFFRGBAImageBegin(&amp;img, tif, 0, emsg))</td></tr>
-<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 620, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to set up RGBA reading of image, filename "</span></td></tr>
-<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> &lt;&lt; TIFFFileName(tif) &lt;&lt; <span class='string_literal'>" error message from Libtiff: "</span> &lt;&lt; emsg;</td></tr>
-<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> <span class='comment'>// libtiff cannot handle all possible orientations, it give weird results.</span></td></tr>
-<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> <span class='comment'>// We rotate ourselves. (Bug 274865)</span></td></tr>
-<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> img.req_orientation = img.orientation;</td></tr>
-<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> <span class='comment'>// read strips from image: read rows_per_strip, so always start at beginning of a strip</span></td></tr>
-<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> <span class='keyword'>for</span> (uint row = 0 ; row &lt; h ; row += rows_per_strip)</td></tr>
-<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; row &gt;= checkpoint)</td></tr>
-<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line"> checkpoint += granularity(observer, h, 0.8F);</td></tr>
-<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
-<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)row) / ((<span class='keyword'>float</span>)h))));</td></tr>
-<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> img.row_offset = row;</td></tr>
-<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> img.col_offset = 0;</td></tr>
-<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> <span class='keyword'>if</span> (row + rows_per_strip &gt; img.height)</td></tr>
-<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> rows_to_read = img.height - row;</td></tr>
-<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> rows_to_read = rows_per_strip;</td></tr>
-<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> <span class='comment'>// Read data</span></td></tr>
-<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='keyword'>if</span> (TIFFRGBAImageGet(&amp;img, <span class='keyword'>reinterpret_cast</span>&lt;uint32*&gt;(strip.data()), img.width, rows_to_read) == -1)</td></tr>
-<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 664, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read image data"</span>;</td></tr>
-<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> pixelsRead = rows_to_read * img.width;</td></tr>
-<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> uchar* stripPtr = (uchar*)(strip.data());</td></tr>
-<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uchar* dataPtr = (uchar*)(data.data() + offset);</td></tr>
-<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> uchar* p = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> <span class='comment'>// Reverse red and blue</span></td></tr>
-<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; pixelsRead ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> p[2] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> p[1] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> p[0] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> p[3] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> offset += pixelsRead * 4;</td></tr>
-<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> TIFFRGBAImageEnd(&amp;img);</td></tr>
-<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
-<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> <span class='keyword'>if</span> (observer)</td></tr>
-<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> observer-&gt;progressInfo(m_image, 1.0);</td></tr>
-<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> imageWidth() = w;</td></tr>
-<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> imageHeight() = h;</td></tr>
-<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> imageData() = data.take();</td></tr>
-<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"format"</span>), QLatin1String(<span class='string_literal'>"TIFF"</span>));</td></tr>
-<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalColorModel"</span>), colorModel);</td></tr>
-<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalBitDepth"</span>), bits_per_sample);</td></tr>
-<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalSize"</span>), QSize(w, h));</td></tr>
-<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line">} <span class='comment'>// namespace DigikamTIFFDImgPlugin</span></td></tr>
+<tr><td class="num"></td><td class="line"><div id="Path57" class="msg msgControl" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">57</div></td><td><div class="PathNav"><a href="#Path56" title="Previous event (56)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 545</td><td><div class="PathNav"><a href="#Path58" title="Next event (58)">&#x2192;</a></div></td></tr></table></div></td></tr>
+<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> <span class='keyword'>switch</span> (st / (num_of_strips / ((samples_per_pixel != 0) ? samples_per_pixel : 1)))</td></tr>
+<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
+<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> p[3] = 0xFFFF;</td></tr>
+<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
+<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
+<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
+<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 16 ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> offset += bytesRead / 16 * 8;</td></tr>
+<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 4 ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
+<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
+<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
+<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
+<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>case</span> 3:</td></tr>
+<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
+<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// Non 16 or 32 bits images ==&gt; get it on BGRA 8 bits.</span></td></tr>
+<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> data.reset(new_failureTolerant(w, h, 4));</td></tr>
+<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(w, rows_per_strip, 4));</td></tr>
+<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
+<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 602, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
+<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
+<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='keyword'>long</span> pixelsRead = 0;</td></tr>
+<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> <span class='comment'>// this is inspired by TIFFReadRGBAStrip, tif_getimage.c</span></td></tr>
+<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> <span class='keyword'>char</span> emsg[1024] = <span class='string_literal'>""</span>;</td></tr>
+<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> uint32 rows_to_read = 0;</td></tr>
+<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> uint checkpoint = 0;</td></tr>
+<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> TIFFRGBAImage img;</td></tr>
+<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='comment'>// test whether libtiff can read format and initiate reading</span></td></tr>
+<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='keyword'>if</span> (!TIFFRGBAImageOK(tif, emsg) || !TIFFRGBAImageBegin(&amp;img, tif, 0, emsg))</td></tr>
+<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 621, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to set up RGBA reading of image, filename "</span></td></tr>
+<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> &lt;&lt; TIFFFileName(tif) &lt;&lt; <span class='string_literal'>" error message from Libtiff: "</span> &lt;&lt; emsg;</td></tr>
+<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> <span class='comment'>// libtiff cannot handle all possible orientations, it give weird results.</span></td></tr>
+<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> <span class='comment'>// We rotate ourselves. (Bug 274865)</span></td></tr>
+<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> img.req_orientation = img.orientation;</td></tr>
+<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> <span class='comment'>// read strips from image: read rows_per_strip, so always start at beginning of a strip</span></td></tr>
+<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> <span class='keyword'>for</span> (uint row = 0 ; row &lt; h ; row += rows_per_strip)</td></tr>
+<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; row &gt;= checkpoint)</td></tr>
+<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> checkpoint += granularity(observer, h, 0.8F);</td></tr>
+<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
+<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)row) / ((<span class='keyword'>float</span>)h))));</td></tr>
+<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> img.row_offset = row;</td></tr>
+<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"> img.col_offset = 0;</td></tr>
+<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"> <span class='keyword'>if</span> (row + rows_per_strip &gt; img.height)</td></tr>
+<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> rows_to_read = img.height - row;</td></tr>
+<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line"> <span class='keyword'>else</span></td></tr>
+<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> rows_to_read = rows_per_strip;</td></tr>
+<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"> <span class='comment'>// Read data</span></td></tr>
+<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>if</span> (TIFFRGBAImageGet(&amp;img, <span class='keyword'>reinterpret_cast</span>&lt;uint32*&gt;(strip.data()), img.width, rows_to_read) == -1)</td></tr>
+<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 665, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read image data"</span>;</td></tr>
+<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> pixelsRead = rows_to_read * img.width;</td></tr>
+<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uchar* stripPtr = (uchar*)(strip.data());</td></tr>
+<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> uchar* dataPtr = (uchar*)(data.data() + offset);</td></tr>
+<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> uchar* p = <span class='keyword'>nullptr</span>;</td></tr>
+<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> <span class='comment'>// Reverse red and blue</span></td></tr>
+<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; pixelsRead ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> p[2] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> p[1] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> p[0] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> p[3] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> offset += pixelsRead * 4;</td></tr>
+<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> TIFFRGBAImageEnd(&amp;img);</td></tr>
+<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
+<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> <span class='keyword'>if</span> (observer)</td></tr>
+<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> observer-&gt;progressInfo(m_image, 1.0);</td></tr>
+<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> imageWidth() = w;</td></tr>
+<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> imageHeight() = h;</td></tr>
+<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> imageData() = data.take();</td></tr>
+<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"format"</span>), QLatin1String(<span class='string_literal'>"TIFF"</span>));</td></tr>
+<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalColorModel"</span>), colorModel);</td></tr>
+<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalBitDepth"</span>), bits_per_sample);</td></tr>
+<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalSize"</span>), QSize(w, h));</td></tr>
+<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
+<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line">}</td></tr>
+<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line">} <span class='comment'>// namespace DigikamTIFFDImgPlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-2bc136.html b/static/reports/clang/master/report-93a828.html
similarity index 99%
rename from static/reports/clang/master/report-2bc136.html
rename to static/reports/clang/master/report-93a828.html
index a8d4d0de0..e53e6556c 100644
--- a/static/reports/clang/master/report-2bc136.html
+++ b/static/reports/clang/master/report-93a828.html
@@ -1,2819 +1,2819 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Array access (from variable 'ypoints') results in a null pointer dereference -->
<!-- BUGTYPE Dereference of null pointer -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -->
<!-- FILENAME dimg_scale.cpp -->
<!-- FUNCTIONNAME dimgScaleAARGB16 -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT d60871b6e76fca80e49923c1e54dcf59 -->
<!-- BUGLINE 1882 -->
<!-- BUGCOLUMN 24 -->
<!-- BUGPATHLENGTH 41 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 1882, column 24</a><br />Array access (from variable 'ypoints') results in a null pointer dereference</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"65": 1, "66": 1, "67": 1, "68": 1, "69": 1, "70": 1, "71": 1, "72": 1, "264": 1, "265": 1, "266": 1, "267": 1, "270": 1, "271": 1, "272": 1, "273": 1, "274": 1, "275": 1, "278": 1, "283": 1, "289": 1, "292": 1, "293": 1, "295": 1, "301": 1, "306": 1, "313": 1, "319": 1, "325": 1, "331": 1, "333": 1, "335": 1, "337": 1, "347": 1, "348": 1, "349": 1, "350": 1, "351": 1, "397": 1, "398": 1, "399": 1, "400": 1, "401": 1, "402": 1, "404": 1, "405": 1, "406": 1, "408": 1, "410": 1, "411": 1, "414": 1, "437": 1, "438": 1, "439": 1, "440": 1, "441": 1, "443": 1, "444": 1, "445": 1, "447": 1, "449": 1, "450": 1, "453": 1, "456": 1, "457": 1, "458": 1, "459": 1, "461": 1, "464": 1, "486": 1, "487": 1, "488": 1, "489": 1, "490": 1, "492": 1, "494": 1, "495": 1, "496": 1, "497": 1, "501": 1, "504": 1, "505": 1, "506": 1, "507": 1, "508": 1, "509": 1, "510": 1, "511": 1, "513": 1, "514": 1, "516": 1, "518": 1, "520": 1, "527": 1, "528": 1, "531": 1, "533": 1, "535": 1, "554": 1, "1555": 1, "1556": 1, "1557": 1, "1558": 1, "1559": 1, "1560": 1, "1561": 1, "1565": 1, "1566": 1, "1567": 1, "1568": 1, "1569": 1, "1570": 1, "1571": 1, "1572": 1, "1573": 1, "1574": 1, "1575": 1, "1576": 1, "1577": 1, "1578": 1, "1579": 1, "1581": 1, "1582": 1, "1583": 1, "1584": 1, "1587": 1, "1695": 1, "1779": 1, "1867": 1, "1868": 1, "1869": 1, "1870": 1, "1872": 1, "1874": 1, "1875": 1, "1876": 1, "1878": 1, "1880": 1, "1881": 1, "1882": 1}, "17066": {"130": 1, "131": 1, "133": 1, "134": 1}, "17430": {"184": 1, "185": 1, "199": 1, "200": 1, "214": 1, "215": 1, "217": 1, "218": 1, "265": 1, "266": 1, "268": 1, "269": 1, "444": 1, "445": 1, "446": 1}, "46996": {"245": 1, "246": 1, "247": 1, "248": 1, "250": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-14</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : digiKam 8/16 bits image management API.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* Description : Smoothscale method based on Imlib2's implementations.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* https://git.enlightenment.org/legacy/imlib2.git/tree/src/lib/scale.c</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Ported to C++ and QImage</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Add smoothScaleSection to scale only an image section.</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* Add 16 bits color depth image support.</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Copyright (C) 1999-2004 by Carsten Haitzler &lt;raster at rasterman dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Copyright (C) 2004 by Willem Monsuwe &lt;willem at stack dot nl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Daniel M. Duley &lt;mosfet at interaccess dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// C ANSI includes</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='keyword'>extern</span> <span class='string_literal'>"C"</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;stdint.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include &lt;cstring&gt;</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;cstdlib&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include &lt;cstdio&gt;</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "dimg_p.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='keyword'>typedef</span> uint64_t ullong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='keyword'>typedef</span> int64_t llong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>namespace</span> DImgScale</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> DImgScaleInfo</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> xpoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> ypoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> <span class="mrange">ypoints16 = <span class='keyword'>nullptr</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Null pointer value stored to field 'ypoints16'</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> xapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> yapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> xup_yup = 0;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> ~DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>delete</span> [] xpoints;</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>delete</span> [] ypoints;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='keyword'>delete</span> [] ypoints16;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>delete</span> [] xapoints;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='keyword'>delete</span> [] yapoints;</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='keyword'>int</span>* xpoints;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> uint** ypoints;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> ullong** ypoints16;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>int</span>* xapoints;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='keyword'>int</span>* yapoints;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>int</span> xup_yup;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line">uint** dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">ullong** dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"><span class='keyword'>int</span>* dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw);</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>int</span>* dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">DImgScaleInfo* dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>bool</span> sixteenBit,</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='keyword'>bool</span> aa);</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"><span class='comment'>// 8 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"><span class='comment'>// 16 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"><span class='comment'>// 8 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"><span class='comment'>// 8 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='comment'>// 16 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"><span class='comment'>// 16 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> DImgScale;</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"><span class='comment'>#define CLIP(x, y, w, h, xx, yy, ww, hh) \</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"><span class='comment'>if (x &lt; (xx)) {w += (x - (xx)); x = (xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"><span class='comment'>if (y &lt; (yy)) {h += (y - (yy)); y = (yy);} \</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='comment'>if ((x + w) &gt; ((xx) + (ww))) {w = (ww) - (x - xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"><span class='comment'>if ((y + h) &gt; ((yy) + (hh))) {h = (hh) - (y - yy);}</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>const</span> QSize&amp; destSize, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QSize scaleSize = size();</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> scaleSize.scale(destSize, aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='keyword'>if</span> (scaleSize.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>return</span> smoothScaleClipped(scaleSize, QRect(QPoint(0, 0), scaleSize));</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>return</span> smoothScale(QSize(dw, dh), aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>const</span> QSize&amp; destSize, <span class='keyword'>const</span> QRect&amp; clip) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>return</span> DImg::smoothScaleClipped(destSize.width(), destSize.height(),</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> clip.x(), clip.y(), clip.width(), clip.height());</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> clipx, <span class='keyword'>int</span> clipy, <span class='keyword'>int</span> clipw, <span class='keyword'>int</span> cliph) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>if</span> (dw &lt;= 0 || dh &lt;= 0 || clipw &lt;= 0 || cliph &lt;= 0 || isNull())</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>if</span> (w &lt;= 0 || h &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='comment'>// ensure clip is valid</span></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(clipx, clipy, clipw, cliph, dw, dh))</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>if</span> ((w == (uint)dw) &amp;&amp; (h == (uint)dh))</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='keyword'>if</span> (clipw == dw &amp;&amp; cliph == dh)</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>return</span> copy();</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>return</span> copy(clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> DImgScaleInfo* scaleinfo = dimgCalcScaleInfo(*<span class='keyword'>this</span>, w, h, dw, dh, sixteenBit(), <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>if</span> (sixteenBit())</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> dimgScaleAARGBA(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> dimgScaleAARGB(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>const</span> QRect&amp; sourceRect, <span class='keyword'>const</span> QSize&amp; destSize) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">smoothScaleSection(sourceRect.x(), sourceRect.y(), sourceRect.width(), sourceRect.height(),</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Calling 'DImg::smoothScaleSection'</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange">destSize.width(), destSize.height())</span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>int</span> sx, <span class='keyword'>int</span> sy,</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='comment'>// sanity checks</span></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">dw &lt;= 0</span>) || (<span class="mrange">dh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming 'dw' is &gt; 0</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming 'dh' is &gt; 0</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='comment'>// clip the source rect to be within the actual image</span></td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='keyword'>int</span> <span class='comment'>/*psx, psy,*/</span> psw, psh;</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"><span class='comment'>// psx = sx;</span></td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"><span class='comment'>// psy = sy;</span></td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> psw = sw;</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> psh = sh;</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(sx, sy, sw, sh, w, h))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='comment'>// clip output coords to clipped input coords</span></td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psw != sw</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Assuming 'psw' is equal to 'sw'</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> dw = (dw * sw) / psw;</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psh != sh</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming 'psh' is equal to 'sh'</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> dh = (dh * sh) / psh;</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='comment'>// do a second check to see if we now have invalid coords</span></td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> <span class='comment'>// do not do anything if we have a 0 width or height image to render</span></td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>if</span> ((dw &lt;= 0) || (dh &lt;= 0))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> <span class='comment'>// if the input rect size &lt; 0 do not render either</span></td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw == dw</span>) &amp;&amp; (sh == dh))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming 'sw' is not equal to 'dw'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> <span class='keyword'>return</span> copy(sx, sy, sw, sh);</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> <span class='comment'>// calculate scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> DImgScaleInfo* scaleinfo = <span class="mrange"><span class="mrange">dimgCalcScaleInfo(*<span class='keyword'>this</span>, sw, sh, dw, dh, sixteenBit(), <span class='keyword'>true</span>)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Calling 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Returning from 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">hasAlpha()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> <span class="mrange">dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGB16'</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> <span class="mrange">((sx * dw) / sw),</td></tr></span>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> <span class="mrange">((sy * dh) / sh),</td></tr></span>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> <span class="mrange">dw, dh,</td></tr></span>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> <span class="mrange">dw, w)</span>;</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> dimgScaleAARGBA(scaleinfo,</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> dimgScaleAARGB(scaleinfo,</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"><span class='comment'>// Code ported from Imlib2...</span></td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"><span class='comment'>// FIXME: replace with mRed, etc... These work on pointers to pixels, not</span></td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"><span class='comment'>// pixel values</span></td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL(p)<span class='expansion'>((unsigned char*)(p))[3]</span></span> ((unsigned char*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL(p)<span class='expansion'>((unsigned char*)(p))[2]</span></span> ((unsigned char*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL(p)<span class='expansion'>((unsigned char*)(p))[1]</span></span> ((unsigned char*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL(p)<span class='expansion'>((unsigned char*)(p))[0]</span></span> ((unsigned char*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"><span class='directive'>#define <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span> (256 - xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"><span class='directive'>#define <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> (xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"><span class='directive'>#define <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span> (256 - yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"><span class='directive'>#define <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> (yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line">uint** DImgScale::dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> uint** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> p = <span class='keyword'>new</span> uint* [dh+1];</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line">ullong** DImgScale::dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> ullong** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> p = <span class='keyword'>new</span> ullong*[(dh+1)];</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>return</span> p;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw)</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[dw+1];</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> inc = (((ullong)sw) &lt;&lt; 16) / dw;</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dw ; ++i)</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> p[j++] = (val &gt;&gt; 16);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up)</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[d];</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> <span class='comment'>/* scaling up */</span></td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='keyword'>if</span> (up)</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> p[j++] = (val &gt;&gt; 8) - ((val &gt;&gt; 8) &amp; 0xffffff00);</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> <span class='keyword'>if</span> ((<span class='keyword'>int</span>)(val &gt;&gt; 16) &gt;= (s - 1))</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> p[j - 1] = 0;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> <span class='comment'>/* scaling down */</span></td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='keyword'>int</span> ap, Cp;</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> Cp = ((d &lt;&lt; 14) / s) + 1;</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> ap = ((0x100 - ((val &gt;&gt; 8) &amp; 0xff)) * Cp) &gt;&gt; 8;</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> p[j] = ap | (Cp &lt;&lt; 16);</td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> ++j;</td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line">DImgScaleInfo* DImgScale::dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> <span class='keyword'>bool</span> <span class='comment'>/*sixteenBit*/</span>,</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> <span class='keyword'>bool</span> aa)</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> DImgScaleInfo* isi = <span class='keyword'>new</span> <span class="mrange"><span class="mrange">DImgScaleInfo</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Calling default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Returning from default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> <span class='keyword'>int</span> scw, sch;</td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> scw = dw * img.width() / sw;</td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> sch = dh * img.height() / sh;</td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> isi-&gt;xup_yup = (<span class="mrange">abs(dw) &gt;= sw</span>) + ((<span class="mrange">abs(dh) &gt;= sh</span>) &lt;&lt; 1);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:40ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> isi-&gt;xpoints = dimgCalcXPoints(img.width(), scw);</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">img.sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> isi-&gt;ypoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> isi-&gt;ypoints16 = dimgCalcYPoints16(<span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> isi-&gt;ypoints16 = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> isi-&gt;ypoints = dimgCalcYPoints(<span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='keyword'>if</span> (aa)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> isi-&gt;xapoints = dimgCalcApoints(img.width(), scw, isi-&gt;xup_yup &amp; 1);</td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> isi-&gt;yapoints = dimgCalcApoints(img.height(), sch, isi-&gt;xup_yup &amp; 2);</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> isi-&gt;xapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[scw];</td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; scw; ++i)</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> isi-&gt;xapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> isi-&gt;yapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[sch];</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; sch; ++i)</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> isi-&gt;yapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> <span class='keyword'>return</span> isi;</td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"><span class='comment'>/** scale by pixel sampling only */</span></td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> dimgSampleRGBA(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> dimgSampleRGBA16(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"><span class='comment'>/* FIXME: NEED to optimize ScaleAARGBA - currently its "ok" but needs work*/</span></td></tr>
<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"><span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"><span class='comment'>dimgScaleAARGBA : scale by area sampling. Arguments:</span></td></tr>
<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> <span class='comment'>DImgScaleInfo* isi, // scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='comment'>uint* dest, // destination img data</span></td></tr>
<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> <span class='comment'>int dxx, // destination x location corresponding to start x of src section</span></td></tr>
<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> <span class='comment'>int dyy, // destination y location corresponding to start y of src section</span></td></tr>
<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> <span class='comment'>int dw, // destination width</span></td></tr>
<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> <span class='comment'>int dh, // destination height</span></td></tr>
<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> <span class='comment'>int dow, // destination scanline width</span></td></tr>
<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> <span class='comment'>int sow); // src scanline width</span></td></tr>
<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> dimgScaleAARGBA(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> <span class='keyword'>int</span> rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line"> aa = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="719"><td class="num" id="LN719">719</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="720"><td class="num" id="LN720">720</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="721"><td class="num" id="LN721">721</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="722"><td class="num" id="LN722">722</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="723"><td class="num" id="LN723">723</td><td class="line"> aa += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="724"><td class="num" id="LN724">724</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="725"><td class="num" id="LN725">725</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="726"><td class="num" id="LN726">726</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="727"><td class="num" id="LN727">727</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="728"><td class="num" id="LN728">728</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="729"><td class="num" id="LN729">729</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="730"><td class="num" id="LN730">730</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="731"><td class="num" id="LN731">731</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="732"><td class="num" id="LN732">732</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="733"><td class="num" id="LN733">733</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="734"><td class="num" id="LN734">734</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="735"><td class="num" id="LN735">735</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="736"><td class="num" id="LN736">736</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="737"><td class="num" id="LN737">737</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="738"><td class="num" id="LN738">738</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="739"><td class="num" id="LN739">739</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="740"><td class="num" id="LN740">740</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="741"><td class="num" id="LN741">741</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="742"><td class="num" id="LN742">742</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="743"><td class="num" id="LN743">743</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="744"><td class="num" id="LN744">744</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="745"><td class="num" id="LN745">745</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="746"><td class="num" id="LN746">746</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="747"><td class="num" id="LN747">747</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="748"><td class="num" id="LN748">748</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="749"><td class="num" id="LN749">749</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="750"><td class="num" id="LN750">750</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="751"><td class="num" id="LN751">751</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="752"><td class="num" id="LN752">752</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="753"><td class="num" id="LN753">753</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="754"><td class="num" id="LN754">754</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="755"><td class="num" id="LN755">755</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="756"><td class="num" id="LN756">756</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="757"><td class="num" id="LN757">757</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="758"><td class="num" id="LN758">758</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="759"><td class="num" id="LN759">759</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="760"><td class="num" id="LN760">760</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="761"><td class="num" id="LN761">761</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="762"><td class="num" id="LN762">762</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="763"><td class="num" id="LN763">763</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="764"><td class="num" id="LN764">764</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="765"><td class="num" id="LN765">765</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="766"><td class="num" id="LN766">766</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="767"><td class="num" id="LN767">767</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="768"><td class="num" id="LN768">768</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="769"><td class="num" id="LN769">769</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="770"><td class="num" id="LN770">770</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="771"><td class="num" id="LN771">771</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="772"><td class="num" id="LN772">772</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="773"><td class="num" id="LN773">773</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="774"><td class="num" id="LN774">774</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="775"><td class="num" id="LN775">775</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="776"><td class="num" id="LN776">776</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="777"><td class="num" id="LN777">777</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="778"><td class="num" id="LN778">778</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="779"><td class="num" id="LN779">779</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="780"><td class="num" id="LN780">780</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="781"><td class="num" id="LN781">781</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="782"><td class="num" id="LN782">782</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="783"><td class="num" id="LN783">783</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="784"><td class="num" id="LN784">784</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="785"><td class="num" id="LN785">785</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="786"><td class="num" id="LN786">786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="787"><td class="num" id="LN787">787</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="788"><td class="num" id="LN788">788</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="789"><td class="num" id="LN789">789</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="790"><td class="num" id="LN790">790</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="791"><td class="num" id="LN791">791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="792"><td class="num" id="LN792">792</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="793"><td class="num" id="LN793">793</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="794"><td class="num" id="LN794">794</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="795"><td class="num" id="LN795">795</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="796"><td class="num" id="LN796">796</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="797"><td class="num" id="LN797">797</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="798"><td class="num" id="LN798">798</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="799"><td class="num" id="LN799">799</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="800"><td class="num" id="LN800">800</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="801"><td class="num" id="LN801">801</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="802"><td class="num" id="LN802">802</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="803"><td class="num" id="LN803">803</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="804"><td class="num" id="LN804">804</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="805"><td class="num" id="LN805">805</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="806"><td class="num" id="LN806">806</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="807"><td class="num" id="LN807">807</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="808"><td class="num" id="LN808">808</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="809"><td class="num" id="LN809">809</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="810"><td class="num" id="LN810">810</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="811"><td class="num" id="LN811">811</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="812"><td class="num" id="LN812">812</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="813"><td class="num" id="LN813">813</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="814"><td class="num" id="LN814">814</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="815"><td class="num" id="LN815">815</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="816"><td class="num" id="LN816">816</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="817"><td class="num" id="LN817">817</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="818"><td class="num" id="LN818">818</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="819"><td class="num" id="LN819">819</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="820"><td class="num" id="LN820">820</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="821"><td class="num" id="LN821">821</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="822"><td class="num" id="LN822">822</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="823"><td class="num" id="LN823">823</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="824"><td class="num" id="LN824">824</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="825"><td class="num" id="LN825">825</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="826"><td class="num" id="LN826">826</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="827"><td class="num" id="LN827">827</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="828"><td class="num" id="LN828">828</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="829"><td class="num" id="LN829">829</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="830"><td class="num" id="LN830">830</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="831"><td class="num" id="LN831">831</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="832"><td class="num" id="LN832">832</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="833"><td class="num" id="LN833">833</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="834"><td class="num" id="LN834">834</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="835"><td class="num" id="LN835">835</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="836"><td class="num" id="LN836">836</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="837"><td class="num" id="LN837">837</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="838"><td class="num" id="LN838">838</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="839"><td class="num" id="LN839">839</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="840"><td class="num" id="LN840">840</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="841"><td class="num" id="LN841">841</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="842"><td class="num" id="LN842">842</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="843"><td class="num" id="LN843">843</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="844"><td class="num" id="LN844">844</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="845"><td class="num" id="LN845">845</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="846"><td class="num" id="LN846">846</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="847"><td class="num" id="LN847">847</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="848"><td class="num" id="LN848">848</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="849"><td class="num" id="LN849">849</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="850"><td class="num" id="LN850">850</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="851"><td class="num" id="LN851">851</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="852"><td class="num" id="LN852">852</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="853"><td class="num" id="LN853">853</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="854"><td class="num" id="LN854">854</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="855"><td class="num" id="LN855">855</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="856"><td class="num" id="LN856">856</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="857"><td class="num" id="LN857">857</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="858"><td class="num" id="LN858">858</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="859"><td class="num" id="LN859">859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="860"><td class="num" id="LN860">860</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="861"><td class="num" id="LN861">861</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="862"><td class="num" id="LN862">862</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="863"><td class="num" id="LN863">863</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="864"><td class="num" id="LN864">864</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="865"><td class="num" id="LN865">865</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="866"><td class="num" id="LN866">866</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="867"><td class="num" id="LN867">867</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="868"><td class="num" id="LN868">868</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="869"><td class="num" id="LN869">869</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="870"><td class="num" id="LN870">870</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="871"><td class="num" id="LN871">871</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="872"><td class="num" id="LN872">872</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="873"><td class="num" id="LN873">873</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="874"><td class="num" id="LN874">874</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="875"><td class="num" id="LN875">875</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="876"><td class="num" id="LN876">876</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="877"><td class="num" id="LN877">877</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="878"><td class="num" id="LN878">878</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="879"><td class="num" id="LN879">879</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="880"><td class="num" id="LN880">880</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="881"><td class="num" id="LN881">881</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="882"><td class="num" id="LN882">882</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="883"><td class="num" id="LN883">883</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="884"><td class="num" id="LN884">884</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="885"><td class="num" id="LN885">885</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="886"><td class="num" id="LN886">886</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="887"><td class="num" id="LN887">887</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="888"><td class="num" id="LN888">888</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="889"><td class="num" id="LN889">889</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="890"><td class="num" id="LN890">890</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="891"><td class="num" id="LN891">891</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="892"><td class="num" id="LN892">892</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="893"><td class="num" id="LN893">893</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="894"><td class="num" id="LN894">894</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="895"><td class="num" id="LN895">895</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="896"><td class="num" id="LN896">896</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="897"><td class="num" id="LN897">897</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="898"><td class="num" id="LN898">898</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="899"><td class="num" id="LN899">899</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="900"><td class="num" id="LN900">900</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="901"><td class="num" id="LN901">901</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="902"><td class="num" id="LN902">902</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="903"><td class="num" id="LN903">903</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="904"><td class="num" id="LN904">904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="905"><td class="num" id="LN905">905</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="906"><td class="num" id="LN906">906</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="907"><td class="num" id="LN907">907</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="908"><td class="num" id="LN908">908</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="909"><td class="num" id="LN909">909</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="910"><td class="num" id="LN910">910</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="911"><td class="num" id="LN911">911</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="912"><td class="num" id="LN912">912</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="913"><td class="num" id="LN913">913</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="914"><td class="num" id="LN914">914</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="915"><td class="num" id="LN915">915</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="916"><td class="num" id="LN916">916</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="917"><td class="num" id="LN917">917</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="918"><td class="num" id="LN918">918</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="919"><td class="num" id="LN919">919</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="920"><td class="num" id="LN920">920</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="921"><td class="num" id="LN921">921</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="922"><td class="num" id="LN922">922</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="923"><td class="num" id="LN923">923</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="924"><td class="num" id="LN924">924</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="925"><td class="num" id="LN925">925</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="926"><td class="num" id="LN926">926</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="927"><td class="num" id="LN927">927</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="928"><td class="num" id="LN928">928</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="929"><td class="num" id="LN929">929</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="930"><td class="num" id="LN930">930</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="931"><td class="num" id="LN931">931</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="932"><td class="num" id="LN932">932</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="933"><td class="num" id="LN933">933</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="934"><td class="num" id="LN934">934</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="935"><td class="num" id="LN935">935</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="936"><td class="num" id="LN936">936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="937"><td class="num" id="LN937">937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="938"><td class="num" id="LN938">938</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="939"><td class="num" id="LN939">939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="940"><td class="num" id="LN940">940</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="941"><td class="num" id="LN941">941</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="942"><td class="num" id="LN942">942</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="943"><td class="num" id="LN943">943</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="944"><td class="num" id="LN944">944</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="945"><td class="num" id="LN945">945</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="946"><td class="num" id="LN946">946</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="947"><td class="num" id="LN947">947</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="948"><td class="num" id="LN948">948</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="949"><td class="num" id="LN949">949</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="950"><td class="num" id="LN950">950</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="951"><td class="num" id="LN951">951</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="952"><td class="num" id="LN952">952</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="953"><td class="num" id="LN953">953</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="954"><td class="num" id="LN954">954</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="955"><td class="num" id="LN955">955</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="956"><td class="num" id="LN956">956</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="957"><td class="num" id="LN957">957</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="958"><td class="num" id="LN958">958</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="959"><td class="num" id="LN959">959</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="960"><td class="num" id="LN960">960</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="961"><td class="num" id="LN961">961</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="962"><td class="num" id="LN962">962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="963"><td class="num" id="LN963">963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="964"><td class="num" id="LN964">964</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="965"><td class="num" id="LN965">965</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="966"><td class="num" id="LN966">966</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="967"><td class="num" id="LN967">967</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="968"><td class="num" id="LN968">968</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="969"><td class="num" id="LN969">969</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="970"><td class="num" id="LN970">970</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="971"><td class="num" id="LN971">971</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="972"><td class="num" id="LN972">972</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="973"><td class="num" id="LN973">973</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="974"><td class="num" id="LN974">974</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="975"><td class="num" id="LN975">975</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="976"><td class="num" id="LN976">976</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="977"><td class="num" id="LN977">977</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="978"><td class="num" id="LN978">978</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="979"><td class="num" id="LN979">979</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="980"><td class="num" id="LN980">980</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="981"><td class="num" id="LN981">981</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="982"><td class="num" id="LN982">982</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="983"><td class="num" id="LN983">983</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="984"><td class="num" id="LN984">984</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="985"><td class="num" id="LN985">985</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="986"><td class="num" id="LN986">986</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="987"><td class="num" id="LN987">987</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="988"><td class="num" id="LN988">988</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="989"><td class="num" id="LN989">989</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="990"><td class="num" id="LN990">990</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="991"><td class="num" id="LN991">991</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="992"><td class="num" id="LN992">992</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="993"><td class="num" id="LN993">993</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="994"><td class="num" id="LN994">994</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="995"><td class="num" id="LN995">995</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="996"><td class="num" id="LN996">996</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="997"><td class="num" id="LN997">997</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="998"><td class="num" id="LN998">998</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="999"><td class="num" id="LN999">999</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1000"><td class="num" id="LN1000">1000</td><td class="line"> <span class='keyword'>int</span> a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1001"><td class="num" id="LN1001">1001</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1002"><td class="num" id="LN1002">1002</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1003"><td class="num" id="LN1003">1003</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1004"><td class="num" id="LN1004">1004</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1005"><td class="num" id="LN1005">1005</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1006"><td class="num" id="LN1006">1006</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1007"><td class="num" id="LN1007">1007</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1008"><td class="num" id="LN1008">1008</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1009"><td class="num" id="LN1009">1009</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1010"><td class="num" id="LN1010">1010</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1011"><td class="num" id="LN1011">1011</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1012"><td class="num" id="LN1012">1012</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1013"><td class="num" id="LN1013">1013</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1014"><td class="num" id="LN1014">1014</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1015"><td class="num" id="LN1015">1015</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1016"><td class="num" id="LN1016">1016</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1017"><td class="num" id="LN1017">1017</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1018"><td class="num" id="LN1018">1018</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1019"><td class="num" id="LN1019">1019</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1020"><td class="num" id="LN1020">1020</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1021"><td class="num" id="LN1021">1021</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1022"><td class="num" id="LN1022">1022</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1023"><td class="num" id="LN1023">1023</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1024"><td class="num" id="LN1024">1024</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1025"><td class="num" id="LN1025">1025</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1026"><td class="num" id="LN1026">1026</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1027"><td class="num" id="LN1027">1027</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1028"><td class="num" id="LN1028">1028</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1029"><td class="num" id="LN1029">1029</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1030"><td class="num" id="LN1030">1030</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1031"><td class="num" id="LN1031">1031</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1032"><td class="num" id="LN1032">1032</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1033"><td class="num" id="LN1033">1033</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1034"><td class="num" id="LN1034">1034</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1035"><td class="num" id="LN1035">1035</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1036"><td class="num" id="LN1036">1036</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1037"><td class="num" id="LN1037">1037</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1038"><td class="num" id="LN1038">1038</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1039"><td class="num" id="LN1039">1039</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1040"><td class="num" id="LN1040">1040</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1041"><td class="num" id="LN1041">1041</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1042"><td class="num" id="LN1042">1042</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1043"><td class="num" id="LN1043">1043</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1044"><td class="num" id="LN1044">1044</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1045"><td class="num" id="LN1045">1045</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1046"><td class="num" id="LN1046">1046</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1047"><td class="num" id="LN1047">1047</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1048"><td class="num" id="LN1048">1048</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1049"><td class="num" id="LN1049">1049</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1050"><td class="num" id="LN1050">1050</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1051"><td class="num" id="LN1051">1051</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1052"><td class="num" id="LN1052">1052</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1053"><td class="num" id="LN1053">1053</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1054"><td class="num" id="LN1054">1054</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1055"><td class="num" id="LN1055">1055</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1056"><td class="num" id="LN1056">1056</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1057"><td class="num" id="LN1057">1057</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1058"><td class="num" id="LN1058">1058</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1059"><td class="num" id="LN1059">1059</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1060"><td class="num" id="LN1060">1060</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1061"><td class="num" id="LN1061">1061</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1062"><td class="num" id="LN1062">1062</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1063"><td class="num" id="LN1063">1063</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1064"><td class="num" id="LN1064">1064</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1065"><td class="num" id="LN1065">1065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1066"><td class="num" id="LN1066">1066</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1067"><td class="num" id="LN1067">1067</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1068"><td class="num" id="LN1068">1068</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1069"><td class="num" id="LN1069">1069</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1070"><td class="num" id="LN1070">1070</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1071"><td class="num" id="LN1071">1071</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1072"><td class="num" id="LN1072">1072</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1073"><td class="num" id="LN1073">1073</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1074"><td class="num" id="LN1074">1074</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1075"><td class="num" id="LN1075">1075</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1076"><td class="num" id="LN1076">1076</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1077"><td class="num" id="LN1077">1077</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1078"><td class="num" id="LN1078">1078</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1079"><td class="num" id="LN1079">1079</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1080"><td class="num" id="LN1080">1080</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1081"><td class="num" id="LN1081">1081</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1082"><td class="num" id="LN1082">1082</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1083"><td class="num" id="LN1083">1083</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1084"><td class="num" id="LN1084">1084</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1085"><td class="num" id="LN1085">1085</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1086"><td class="num" id="LN1086">1086</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1087"><td class="num" id="LN1087">1087</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1088"><td class="num" id="LN1088">1088</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1089"><td class="num" id="LN1089">1089</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1090"><td class="num" id="LN1090">1090</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1091"><td class="num" id="LN1091">1091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1092"><td class="num" id="LN1092">1092</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1093"><td class="num" id="LN1093">1093</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1094"><td class="num" id="LN1094">1094</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1095"><td class="num" id="LN1095">1095</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1096"><td class="num" id="LN1096">1096</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1097"><td class="num" id="LN1097">1097</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1098"><td class="num" id="LN1098">1098</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1099"><td class="num" id="LN1099">1099</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1100"><td class="num" id="LN1100">1100</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1101"><td class="num" id="LN1101">1101</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1102"><td class="num" id="LN1102">1102</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1103"><td class="num" id="LN1103">1103</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1104"><td class="num" id="LN1104">1104</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1105"><td class="num" id="LN1105">1105</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1106"><td class="num" id="LN1106">1106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1107"><td class="num" id="LN1107">1107</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1108"><td class="num" id="LN1108">1108</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1109"><td class="num" id="LN1109">1109</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1110"><td class="num" id="LN1110">1110</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1111"><td class="num" id="LN1111">1111</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1112"><td class="num" id="LN1112">1112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1113"><td class="num" id="LN1113">1113</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1114"><td class="num" id="LN1114">1114</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1115"><td class="num" id="LN1115">1115</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1116"><td class="num" id="LN1116">1116</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1117"><td class="num" id="LN1117">1117</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1118"><td class="num" id="LN1118">1118</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1119"><td class="num" id="LN1119">1119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1120"><td class="num" id="LN1120">1120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1121"><td class="num" id="LN1121">1121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1122"><td class="num" id="LN1122">1122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1123"><td class="num" id="LN1123">1123</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1124"><td class="num" id="LN1124">1124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1125"><td class="num" id="LN1125">1125</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1126"><td class="num" id="LN1126">1126</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1127"><td class="num" id="LN1127">1127</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1128"><td class="num" id="LN1128">1128</td><td class="line"> dimgScaleAARGB(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1129"><td class="num" id="LN1129">1129</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1130"><td class="num" id="LN1130">1130</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1131"><td class="num" id="LN1131">1131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1132"><td class="num" id="LN1132">1132</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte */</span></td></tr>
<tr class="codeline" data-linenumber="1133"><td class="num" id="LN1133">1133</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1134"><td class="num" id="LN1134">1134</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1135"><td class="num" id="LN1135">1135</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1136"><td class="num" id="LN1136">1136</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1137"><td class="num" id="LN1137">1137</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1138"><td class="num" id="LN1138">1138</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1139"><td class="num" id="LN1139">1139</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1140"><td class="num" id="LN1140">1140</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1141"><td class="num" id="LN1141">1141</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1142"><td class="num" id="LN1142">1142</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1143"><td class="num" id="LN1143">1143</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1144"><td class="num" id="LN1144">1144</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1145"><td class="num" id="LN1145">1145</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="1146"><td class="num" id="LN1146">1146</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1147"><td class="num" id="LN1147">1147</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1148"><td class="num" id="LN1148">1148</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1149"><td class="num" id="LN1149">1149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1150"><td class="num" id="LN1150">1150</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1151"><td class="num" id="LN1151">1151</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1152"><td class="num" id="LN1152">1152</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1153"><td class="num" id="LN1153">1153</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1154"><td class="num" id="LN1154">1154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1155"><td class="num" id="LN1155">1155</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="1156"><td class="num" id="LN1156">1156</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="1157"><td class="num" id="LN1157">1157</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1158"><td class="num" id="LN1158">1158</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1159"><td class="num" id="LN1159">1159</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1160"><td class="num" id="LN1160">1160</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1161"><td class="num" id="LN1161">1161</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="1162"><td class="num" id="LN1162">1162</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1163"><td class="num" id="LN1163">1163</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1164"><td class="num" id="LN1164">1164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1165"><td class="num" id="LN1165">1165</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1166"><td class="num" id="LN1166">1166</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1167"><td class="num" id="LN1167">1167</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1168"><td class="num" id="LN1168">1168</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1169"><td class="num" id="LN1169">1169</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1170"><td class="num" id="LN1170">1170</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1171"><td class="num" id="LN1171">1171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1172"><td class="num" id="LN1172">1172</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1173"><td class="num" id="LN1173">1173</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1174"><td class="num" id="LN1174">1174</td><td class="line"> <span class='keyword'>int</span> rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1175"><td class="num" id="LN1175">1175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1176"><td class="num" id="LN1176">1176</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1177"><td class="num" id="LN1177">1177</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1178"><td class="num" id="LN1178">1178</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1179"><td class="num" id="LN1179">1179</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1180"><td class="num" id="LN1180">1180</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1181"><td class="num" id="LN1181">1181</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1182"><td class="num" id="LN1182">1182</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1183"><td class="num" id="LN1183">1183</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1184"><td class="num" id="LN1184">1184</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1185"><td class="num" id="LN1185">1185</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1186"><td class="num" id="LN1186">1186</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1187"><td class="num" id="LN1187">1187</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1188"><td class="num" id="LN1188">1188</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1189"><td class="num" id="LN1189">1189</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1190"><td class="num" id="LN1190">1190</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1191"><td class="num" id="LN1191">1191</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1192"><td class="num" id="LN1192">1192</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1193"><td class="num" id="LN1193">1193</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1194"><td class="num" id="LN1194">1194</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1195"><td class="num" id="LN1195">1195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1196"><td class="num" id="LN1196">1196</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1197"><td class="num" id="LN1197">1197</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1198"><td class="num" id="LN1198">1198</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1199"><td class="num" id="LN1199">1199</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1200"><td class="num" id="LN1200">1200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1201"><td class="num" id="LN1201">1201</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1202"><td class="num" id="LN1202">1202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1203"><td class="num" id="LN1203">1203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1204"><td class="num" id="LN1204">1204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1205"><td class="num" id="LN1205">1205</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1206"><td class="num" id="LN1206">1206</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1207"><td class="num" id="LN1207">1207</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1208"><td class="num" id="LN1208">1208</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1209"><td class="num" id="LN1209">1209</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1210"><td class="num" id="LN1210">1210</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1211"><td class="num" id="LN1211">1211</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1212"><td class="num" id="LN1212">1212</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1213"><td class="num" id="LN1213">1213</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1214"><td class="num" id="LN1214">1214</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1215"><td class="num" id="LN1215">1215</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1216"><td class="num" id="LN1216">1216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1217"><td class="num" id="LN1217">1217</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1218"><td class="num" id="LN1218">1218</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1219"><td class="num" id="LN1219">1219</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1220"><td class="num" id="LN1220">1220</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1221"><td class="num" id="LN1221">1221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1222"><td class="num" id="LN1222">1222</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1223"><td class="num" id="LN1223">1223</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1224"><td class="num" id="LN1224">1224</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1225"><td class="num" id="LN1225">1225</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1226"><td class="num" id="LN1226">1226</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1227"><td class="num" id="LN1227">1227</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1228"><td class="num" id="LN1228">1228</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1229"><td class="num" id="LN1229">1229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1230"><td class="num" id="LN1230">1230</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1231"><td class="num" id="LN1231">1231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1232"><td class="num" id="LN1232">1232</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1233"><td class="num" id="LN1233">1233</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1234"><td class="num" id="LN1234">1234</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1235"><td class="num" id="LN1235">1235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1236"><td class="num" id="LN1236">1236</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1237"><td class="num" id="LN1237">1237</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1238"><td class="num" id="LN1238">1238</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1239"><td class="num" id="LN1239">1239</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1240"><td class="num" id="LN1240">1240</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1241"><td class="num" id="LN1241">1241</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1242"><td class="num" id="LN1242">1242</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1243"><td class="num" id="LN1243">1243</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1244"><td class="num" id="LN1244">1244</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1245"><td class="num" id="LN1245">1245</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1246"><td class="num" id="LN1246">1246</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1247"><td class="num" id="LN1247">1247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1248"><td class="num" id="LN1248">1248</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1249"><td class="num" id="LN1249">1249</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1250"><td class="num" id="LN1250">1250</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1251"><td class="num" id="LN1251">1251</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1252"><td class="num" id="LN1252">1252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1253"><td class="num" id="LN1253">1253</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1254"><td class="num" id="LN1254">1254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1255"><td class="num" id="LN1255">1255</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1256"><td class="num" id="LN1256">1256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1257"><td class="num" id="LN1257">1257</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1258"><td class="num" id="LN1258">1258</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1259"><td class="num" id="LN1259">1259</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1260"><td class="num" id="LN1260">1260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1261"><td class="num" id="LN1261">1261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1262"><td class="num" id="LN1262">1262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1263"><td class="num" id="LN1263">1263</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1264"><td class="num" id="LN1264">1264</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="1265"><td class="num" id="LN1265">1265</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1266"><td class="num" id="LN1266">1266</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1267"><td class="num" id="LN1267">1267</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1268"><td class="num" id="LN1268">1268</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1269"><td class="num" id="LN1269">1269</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1270"><td class="num" id="LN1270">1270</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1271"><td class="num" id="LN1271">1271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1272"><td class="num" id="LN1272">1272</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1273"><td class="num" id="LN1273">1273</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1274"><td class="num" id="LN1274">1274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1275"><td class="num" id="LN1275">1275</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1276"><td class="num" id="LN1276">1276</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1277"><td class="num" id="LN1277">1277</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1278"><td class="num" id="LN1278">1278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1279"><td class="num" id="LN1279">1279</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1280"><td class="num" id="LN1280">1280</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1281"><td class="num" id="LN1281">1281</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1282"><td class="num" id="LN1282">1282</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1283"><td class="num" id="LN1283">1283</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1284"><td class="num" id="LN1284">1284</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1285"><td class="num" id="LN1285">1285</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1286"><td class="num" id="LN1286">1286</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1287"><td class="num" id="LN1287">1287</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1288"><td class="num" id="LN1288">1288</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1289"><td class="num" id="LN1289">1289</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1290"><td class="num" id="LN1290">1290</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1291"><td class="num" id="LN1291">1291</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1292"><td class="num" id="LN1292">1292</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1293"><td class="num" id="LN1293">1293</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1294"><td class="num" id="LN1294">1294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1295"><td class="num" id="LN1295">1295</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1296"><td class="num" id="LN1296">1296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1297"><td class="num" id="LN1297">1297</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1298"><td class="num" id="LN1298">1298</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1299"><td class="num" id="LN1299">1299</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1300"><td class="num" id="LN1300">1300</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1301"><td class="num" id="LN1301">1301</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1302"><td class="num" id="LN1302">1302</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1303"><td class="num" id="LN1303">1303</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1304"><td class="num" id="LN1304">1304</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1305"><td class="num" id="LN1305">1305</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1306"><td class="num" id="LN1306">1306</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1307"><td class="num" id="LN1307">1307</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1308"><td class="num" id="LN1308">1308</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1309"><td class="num" id="LN1309">1309</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1310"><td class="num" id="LN1310">1310</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1311"><td class="num" id="LN1311">1311</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1312"><td class="num" id="LN1312">1312</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1313"><td class="num" id="LN1313">1313</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1314"><td class="num" id="LN1314">1314</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1315"><td class="num" id="LN1315">1315</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1316"><td class="num" id="LN1316">1316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1317"><td class="num" id="LN1317">1317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1318"><td class="num" id="LN1318">1318</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1319"><td class="num" id="LN1319">1319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1320"><td class="num" id="LN1320">1320</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1321"><td class="num" id="LN1321">1321</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1322"><td class="num" id="LN1322">1322</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1323"><td class="num" id="LN1323">1323</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1324"><td class="num" id="LN1324">1324</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1325"><td class="num" id="LN1325">1325</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1326"><td class="num" id="LN1326">1326</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1327"><td class="num" id="LN1327">1327</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1328"><td class="num" id="LN1328">1328</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1329"><td class="num" id="LN1329">1329</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1330"><td class="num" id="LN1330">1330</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1331"><td class="num" id="LN1331">1331</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1332"><td class="num" id="LN1332">1332</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1333"><td class="num" id="LN1333">1333</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1334"><td class="num" id="LN1334">1334</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1335"><td class="num" id="LN1335">1335</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1336"><td class="num" id="LN1336">1336</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1337"><td class="num" id="LN1337">1337</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1338"><td class="num" id="LN1338">1338</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1339"><td class="num" id="LN1339">1339</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1340"><td class="num" id="LN1340">1340</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1341"><td class="num" id="LN1341">1341</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1342"><td class="num" id="LN1342">1342</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1343"><td class="num" id="LN1343">1343</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1344"><td class="num" id="LN1344">1344</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1345"><td class="num" id="LN1345">1345</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1346"><td class="num" id="LN1346">1346</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1347"><td class="num" id="LN1347">1347</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1348"><td class="num" id="LN1348">1348</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="1349"><td class="num" id="LN1349">1349</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="1350"><td class="num" id="LN1350">1350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1351"><td class="num" id="LN1351">1351</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1352"><td class="num" id="LN1352">1352</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1353"><td class="num" id="LN1353">1353</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1354"><td class="num" id="LN1354">1354</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1355"><td class="num" id="LN1355">1355</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1356"><td class="num" id="LN1356">1356</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1357"><td class="num" id="LN1357">1357</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1358"><td class="num" id="LN1358">1358</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1359"><td class="num" id="LN1359">1359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1360"><td class="num" id="LN1360">1360</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1361"><td class="num" id="LN1361">1361</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1362"><td class="num" id="LN1362">1362</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1363"><td class="num" id="LN1363">1363</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1364"><td class="num" id="LN1364">1364</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1365"><td class="num" id="LN1365">1365</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1366"><td class="num" id="LN1366">1366</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1367"><td class="num" id="LN1367">1367</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1368"><td class="num" id="LN1368">1368</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1369"><td class="num" id="LN1369">1369</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1370"><td class="num" id="LN1370">1370</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1371"><td class="num" id="LN1371">1371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1372"><td class="num" id="LN1372">1372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1373"><td class="num" id="LN1373">1373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1374"><td class="num" id="LN1374">1374</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1375"><td class="num" id="LN1375">1375</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1376"><td class="num" id="LN1376">1376</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1377"><td class="num" id="LN1377">1377</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1378"><td class="num" id="LN1378">1378</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1379"><td class="num" id="LN1379">1379</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1380"><td class="num" id="LN1380">1380</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1381"><td class="num" id="LN1381">1381</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1382"><td class="num" id="LN1382">1382</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1383"><td class="num" id="LN1383">1383</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1384"><td class="num" id="LN1384">1384</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1385"><td class="num" id="LN1385">1385</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1386"><td class="num" id="LN1386">1386</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1387"><td class="num" id="LN1387">1387</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1388"><td class="num" id="LN1388">1388</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1389"><td class="num" id="LN1389">1389</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1390"><td class="num" id="LN1390">1390</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1391"><td class="num" id="LN1391">1391</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1392"><td class="num" id="LN1392">1392</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1393"><td class="num" id="LN1393">1393</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1394"><td class="num" id="LN1394">1394</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1395"><td class="num" id="LN1395">1395</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1396"><td class="num" id="LN1396">1396</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1397"><td class="num" id="LN1397">1397</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1398"><td class="num" id="LN1398">1398</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1399"><td class="num" id="LN1399">1399</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1400"><td class="num" id="LN1400">1400</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1401"><td class="num" id="LN1401">1401</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1402"><td class="num" id="LN1402">1402</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1403"><td class="num" id="LN1403">1403</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1404"><td class="num" id="LN1404">1404</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1405"><td class="num" id="LN1405">1405</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1406"><td class="num" id="LN1406">1406</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1407"><td class="num" id="LN1407">1407</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1408"><td class="num" id="LN1408">1408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1409"><td class="num" id="LN1409">1409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1410"><td class="num" id="LN1410">1410</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1411"><td class="num" id="LN1411">1411</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1412"><td class="num" id="LN1412">1412</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1413"><td class="num" id="LN1413">1413</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1414"><td class="num" id="LN1414">1414</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1415"><td class="num" id="LN1415">1415</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1416"><td class="num" id="LN1416">1416</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1417"><td class="num" id="LN1417">1417</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1418"><td class="num" id="LN1418">1418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1419"><td class="num" id="LN1419">1419</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1420"><td class="num" id="LN1420">1420</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1421"><td class="num" id="LN1421">1421</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1422"><td class="num" id="LN1422">1422</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1423"><td class="num" id="LN1423">1423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1424"><td class="num" id="LN1424">1424</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1425"><td class="num" id="LN1425">1425</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1426"><td class="num" id="LN1426">1426</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1427"><td class="num" id="LN1427">1427</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1428"><td class="num" id="LN1428">1428</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1429"><td class="num" id="LN1429">1429</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1430"><td class="num" id="LN1430">1430</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1431"><td class="num" id="LN1431">1431</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1432"><td class="num" id="LN1432">1432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1433"><td class="num" id="LN1433">1433</td><td class="line"> <span class='comment'>/* fully optimized (i think) - only change of algorithm can help */</span></td></tr>
<tr class="codeline" data-linenumber="1434"><td class="num" id="LN1434">1434</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1435"><td class="num" id="LN1435">1435</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1436"><td class="num" id="LN1436">1436</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1437"><td class="num" id="LN1437">1437</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1438"><td class="num" id="LN1438">1438</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1439"><td class="num" id="LN1439">1439</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1440"><td class="num" id="LN1440">1440</td><td class="line"> <span class='keyword'>int</span> r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1441"><td class="num" id="LN1441">1441</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1442"><td class="num" id="LN1442">1442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1443"><td class="num" id="LN1443">1443</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1444"><td class="num" id="LN1444">1444</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1445"><td class="num" id="LN1445">1445</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1446"><td class="num" id="LN1446">1446</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1447"><td class="num" id="LN1447">1447</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1448"><td class="num" id="LN1448">1448</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1449"><td class="num" id="LN1449">1449</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1450"><td class="num" id="LN1450">1450</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1451"><td class="num" id="LN1451">1451</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1452"><td class="num" id="LN1452">1452</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1453"><td class="num" id="LN1453">1453</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1454"><td class="num" id="LN1454">1454</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1455"><td class="num" id="LN1455">1455</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1456"><td class="num" id="LN1456">1456</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1457"><td class="num" id="LN1457">1457</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1458"><td class="num" id="LN1458">1458</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1459"><td class="num" id="LN1459">1459</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1460"><td class="num" id="LN1460">1460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1461"><td class="num" id="LN1461">1461</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1462"><td class="num" id="LN1462">1462</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1463"><td class="num" id="LN1463">1463</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1464"><td class="num" id="LN1464">1464</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1465"><td class="num" id="LN1465">1465</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1466"><td class="num" id="LN1466">1466</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1467"><td class="num" id="LN1467">1467</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1468"><td class="num" id="LN1468">1468</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1469"><td class="num" id="LN1469">1469</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1470"><td class="num" id="LN1470">1470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1471"><td class="num" id="LN1471">1471</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1472"><td class="num" id="LN1472">1472</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1473"><td class="num" id="LN1473">1473</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1474"><td class="num" id="LN1474">1474</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1475"><td class="num" id="LN1475">1475</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1476"><td class="num" id="LN1476">1476</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1477"><td class="num" id="LN1477">1477</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1478"><td class="num" id="LN1478">1478</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1479"><td class="num" id="LN1479">1479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1480"><td class="num" id="LN1480">1480</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1481"><td class="num" id="LN1481">1481</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1482"><td class="num" id="LN1482">1482</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1483"><td class="num" id="LN1483">1483</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1484"><td class="num" id="LN1484">1484</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1485"><td class="num" id="LN1485">1485</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1486"><td class="num" id="LN1486">1486</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1487"><td class="num" id="LN1487">1487</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1488"><td class="num" id="LN1488">1488</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1489"><td class="num" id="LN1489">1489</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1490"><td class="num" id="LN1490">1490</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1491"><td class="num" id="LN1491">1491</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1492"><td class="num" id="LN1492">1492</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1493"><td class="num" id="LN1493">1493</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1494"><td class="num" id="LN1494">1494</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1495"><td class="num" id="LN1495">1495</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1496"><td class="num" id="LN1496">1496</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1497"><td class="num" id="LN1497">1497</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1498"><td class="num" id="LN1498">1498</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1499"><td class="num" id="LN1499">1499</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1500"><td class="num" id="LN1500">1500</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1501"><td class="num" id="LN1501">1501</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1502"><td class="num" id="LN1502">1502</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1503"><td class="num" id="LN1503">1503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1504"><td class="num" id="LN1504">1504</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1505"><td class="num" id="LN1505">1505</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1506"><td class="num" id="LN1506">1506</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1507"><td class="num" id="LN1507">1507</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1508"><td class="num" id="LN1508">1508</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1509"><td class="num" id="LN1509">1509</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1510"><td class="num" id="LN1510">1510</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1511"><td class="num" id="LN1511">1511</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1512"><td class="num" id="LN1512">1512</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1513"><td class="num" id="LN1513">1513</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1514"><td class="num" id="LN1514">1514</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1515"><td class="num" id="LN1515">1515</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1516"><td class="num" id="LN1516">1516</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1517"><td class="num" id="LN1517">1517</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1518"><td class="num" id="LN1518">1518</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1519"><td class="num" id="LN1519">1519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1520"><td class="num" id="LN1520">1520</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1521"><td class="num" id="LN1521">1521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1522"><td class="num" id="LN1522">1522</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1523"><td class="num" id="LN1523">1523</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1524"><td class="num" id="LN1524">1524</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1525"><td class="num" id="LN1525">1525</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1526"><td class="num" id="LN1526">1526</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1527"><td class="num" id="LN1527">1527</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1528"><td class="num" id="LN1528">1528</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1529"><td class="num" id="LN1529">1529</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1530"><td class="num" id="LN1530">1530</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1531"><td class="num" id="LN1531">1531</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1532"><td class="num" id="LN1532">1532</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1533"><td class="num" id="LN1533">1533</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1534"><td class="num" id="LN1534">1534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1535"><td class="num" id="LN1535">1535</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1536"><td class="num" id="LN1536">1536</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1537"><td class="num" id="LN1537">1537</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1538"><td class="num" id="LN1538">1538</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1539"><td class="num" id="LN1539">1539</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1540"><td class="num" id="LN1540">1540</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1541"><td class="num" id="LN1541">1541</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1542"><td class="num" id="LN1542">1542</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1543"><td class="num" id="LN1543">1543</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1544"><td class="num" id="LN1544">1544</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1545"><td class="num" id="LN1545">1545</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1546"><td class="num" id="LN1546">1546</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1547"><td class="num" id="LN1547">1547</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1548"><td class="num" id="LN1548">1548</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1549"><td class="num" id="LN1549">1549</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1550"><td class="num" id="LN1550">1550</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL16(p)<span class='expansion'>((ushort*)(p))[3]</span></span> ((ushort*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="1551"><td class="num" id="LN1551">1551</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL16(p)<span class='expansion'>((ushort*)(p))[2]</span></span> ((ushort*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="1552"><td class="num" id="LN1552">1552</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL16(p)<span class='expansion'>((ushort*)(p))[1]</span></span> ((ushort*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="1553"><td class="num" id="LN1553">1553</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL16(p)<span class='expansion'>((ushort*)(p))[0]</span></span> ((ushort*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="1554"><td class="num" id="LN1554">1554</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1555"><td class="num" id="LN1555">1555</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1556"><td class="num" id="LN1556">1556</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1557"><td class="num" id="LN1557">1557</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1558"><td class="num" id="LN1558">1558</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1559"><td class="num" id="LN1559">1559</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1560"><td class="num" id="LN1560">1560</td><td class="line"> <span class="mrange">dimgScaleAARGB16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGB16'</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1561"><td class="num" id="LN1561">1561</td><td class="line"> <span class="mrange">0, 0, dw, dh)</span>;</td></tr>
<tr class="codeline" data-linenumber="1562"><td class="num" id="LN1562">1562</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1563"><td class="num" id="LN1563">1563</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1564"><td class="num" id="LN1564">1564</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte*/</span></td></tr>
<tr class="codeline" data-linenumber="1565"><td class="num" id="LN1565">1565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1566"><td class="num" id="LN1566">1566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1567"><td class="num" id="LN1567">1567</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1568"><td class="num" id="LN1568">1568</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1569"><td class="num" id="LN1569">1569</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1570"><td class="num" id="LN1570">1570</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1571"><td class="num" id="LN1571">1571</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1572"><td class="num" id="LN1572">1572</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1573"><td class="num" id="LN1573">1573</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1574"><td class="num" id="LN1574">1574</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1575"><td class="num" id="LN1575">1575</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1576"><td class="num" id="LN1576">1576</td><td class="line"> <span class="mrange">ullong** ypoints</span> = isi-&gt;ypoints16;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>'ypoints' initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1577"><td class="num" id="LN1577">1577</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1578"><td class="num" id="LN1578">1578</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1579"><td class="num" id="LN1579">1579</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1580"><td class="num" id="LN1580">1580</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1581"><td class="num" id="LN1581">1581</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1582"><td class="num" id="LN1582">1582</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1583"><td class="num" id="LN1583">1583</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1584"><td class="num" id="LN1584">1584</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1585"><td class="num" id="LN1585">1585</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1586"><td class="num" id="LN1586">1586</td><td class="line"> <span class='comment'>// scaling up both ways</span></td></tr>
<tr class="codeline" data-linenumber="1587"><td class="num" id="LN1587">1587</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1588"><td class="num" id="LN1588">1588</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1589"><td class="num" id="LN1589">1589</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1590"><td class="num" id="LN1590">1590</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1591"><td class="num" id="LN1591">1591</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1592"><td class="num" id="LN1592">1592</td><td class="line"> <span class='comment'>// calculate the source line we'll scan from</span></td></tr>
<tr class="codeline" data-linenumber="1593"><td class="num" id="LN1593">1593</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1594"><td class="num" id="LN1594">1594</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1595"><td class="num" id="LN1595">1595</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1596"><td class="num" id="LN1596">1596</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1597"><td class="num" id="LN1597">1597</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1598"><td class="num" id="LN1598">1598</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1599"><td class="num" id="LN1599">1599</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1600"><td class="num" id="LN1600">1600</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1601"><td class="num" id="LN1601">1601</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1602"><td class="num" id="LN1602">1602</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1603"><td class="num" id="LN1603">1603</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1604"><td class="num" id="LN1604">1604</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1605"><td class="num" id="LN1605">1605</td><td class="line"> llong rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1606"><td class="num" id="LN1606">1606</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1607"><td class="num" id="LN1607">1607</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1608"><td class="num" id="LN1608">1608</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1609"><td class="num" id="LN1609">1609</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1610"><td class="num" id="LN1610">1610</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1611"><td class="num" id="LN1611">1611</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1612"><td class="num" id="LN1612">1612</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1613"><td class="num" id="LN1613">1613</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1614"><td class="num" id="LN1614">1614</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1615"><td class="num" id="LN1615">1615</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1616"><td class="num" id="LN1616">1616</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1617"><td class="num" id="LN1617">1617</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1618"><td class="num" id="LN1618">1618</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1619"><td class="num" id="LN1619">1619</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1620"><td class="num" id="LN1620">1620</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1621"><td class="num" id="LN1621">1621</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1622"><td class="num" id="LN1622">1622</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1623"><td class="num" id="LN1623">1623</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1624"><td class="num" id="LN1624">1624</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1625"><td class="num" id="LN1625">1625</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1626"><td class="num" id="LN1626">1626</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1627"><td class="num" id="LN1627">1627</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1628"><td class="num" id="LN1628">1628</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1629"><td class="num" id="LN1629">1629</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1630"><td class="num" id="LN1630">1630</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1631"><td class="num" id="LN1631">1631</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1632"><td class="num" id="LN1632">1632</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1633"><td class="num" id="LN1633">1633</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1634"><td class="num" id="LN1634">1634</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1635"><td class="num" id="LN1635">1635</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1636"><td class="num" id="LN1636">1636</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1637"><td class="num" id="LN1637">1637</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1638"><td class="num" id="LN1638">1638</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1639"><td class="num" id="LN1639">1639</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1640"><td class="num" id="LN1640">1640</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1641"><td class="num" id="LN1641">1641</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1642"><td class="num" id="LN1642">1642</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1643"><td class="num" id="LN1643">1643</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1644"><td class="num" id="LN1644">1644</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1645"><td class="num" id="LN1645">1645</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1646"><td class="num" id="LN1646">1646</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1647"><td class="num" id="LN1647">1647</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1648"><td class="num" id="LN1648">1648</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1649"><td class="num" id="LN1649">1649</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1650"><td class="num" id="LN1650">1650</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1651"><td class="num" id="LN1651">1651</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1652"><td class="num" id="LN1652">1652</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1653"><td class="num" id="LN1653">1653</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1654"><td class="num" id="LN1654">1654</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1655"><td class="num" id="LN1655">1655</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1656"><td class="num" id="LN1656">1656</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1657"><td class="num" id="LN1657">1657</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1658"><td class="num" id="LN1658">1658</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1659"><td class="num" id="LN1659">1659</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1660"><td class="num" id="LN1660">1660</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1661"><td class="num" id="LN1661">1661</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1662"><td class="num" id="LN1662">1662</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1663"><td class="num" id="LN1663">1663</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1664"><td class="num" id="LN1664">1664</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1665"><td class="num" id="LN1665">1665</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1666"><td class="num" id="LN1666">1666</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1667"><td class="num" id="LN1667">1667</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1668"><td class="num" id="LN1668">1668</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1669"><td class="num" id="LN1669">1669</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1670"><td class="num" id="LN1670">1670</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1671"><td class="num" id="LN1671">1671</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1672"><td class="num" id="LN1672">1672</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1673"><td class="num" id="LN1673">1673</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1674"><td class="num" id="LN1674">1674</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1675"><td class="num" id="LN1675">1675</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1676"><td class="num" id="LN1676">1676</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1677"><td class="num" id="LN1677">1677</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1678"><td class="num" id="LN1678">1678</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1679"><td class="num" id="LN1679">1679</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1680"><td class="num" id="LN1680">1680</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1681"><td class="num" id="LN1681">1681</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1682"><td class="num" id="LN1682">1682</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1683"><td class="num" id="LN1683">1683</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1684"><td class="num" id="LN1684">1684</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1685"><td class="num" id="LN1685">1685</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1686"><td class="num" id="LN1686">1686</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1687"><td class="num" id="LN1687">1687</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1688"><td class="num" id="LN1688">1688</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1689"><td class="num" id="LN1689">1689</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1690"><td class="num" id="LN1690">1690</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1691"><td class="num" id="LN1691">1691</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1692"><td class="num" id="LN1692">1692</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1693"><td class="num" id="LN1693">1693</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1694"><td class="num" id="LN1694">1694</td><td class="line"> <span class='comment'>// if we're scaling down vertically</span></td></tr>
<tr class="codeline" data-linenumber="1695"><td class="num" id="LN1695">1695</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1696"><td class="num" id="LN1696">1696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1697"><td class="num" id="LN1697">1697</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1698"><td class="num" id="LN1698">1698</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1699"><td class="num" id="LN1699">1699</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1700"><td class="num" id="LN1700">1700</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1701"><td class="num" id="LN1701">1701</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1702"><td class="num" id="LN1702">1702</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1703"><td class="num" id="LN1703">1703</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1704"><td class="num" id="LN1704">1704</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1705"><td class="num" id="LN1705">1705</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1706"><td class="num" id="LN1706">1706</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1707"><td class="num" id="LN1707">1707</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1708"><td class="num" id="LN1708">1708</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1709"><td class="num" id="LN1709">1709</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1710"><td class="num" id="LN1710">1710</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1711"><td class="num" id="LN1711">1711</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1712"><td class="num" id="LN1712">1712</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1713"><td class="num" id="LN1713">1713</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1714"><td class="num" id="LN1714">1714</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1715"><td class="num" id="LN1715">1715</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1716"><td class="num" id="LN1716">1716</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1717"><td class="num" id="LN1717">1717</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1718"><td class="num" id="LN1718">1718</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1719"><td class="num" id="LN1719">1719</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1720"><td class="num" id="LN1720">1720</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1721"><td class="num" id="LN1721">1721</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1722"><td class="num" id="LN1722">1722</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1723"><td class="num" id="LN1723">1723</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1724"><td class="num" id="LN1724">1724</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1725"><td class="num" id="LN1725">1725</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1726"><td class="num" id="LN1726">1726</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1727"><td class="num" id="LN1727">1727</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1728"><td class="num" id="LN1728">1728</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1729"><td class="num" id="LN1729">1729</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1730"><td class="num" id="LN1730">1730</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1731"><td class="num" id="LN1731">1731</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1732"><td class="num" id="LN1732">1732</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1733"><td class="num" id="LN1733">1733</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1734"><td class="num" id="LN1734">1734</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1735"><td class="num" id="LN1735">1735</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1736"><td class="num" id="LN1736">1736</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1737"><td class="num" id="LN1737">1737</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1738"><td class="num" id="LN1738">1738</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1739"><td class="num" id="LN1739">1739</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1740"><td class="num" id="LN1740">1740</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1741"><td class="num" id="LN1741">1741</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1742"><td class="num" id="LN1742">1742</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1743"><td class="num" id="LN1743">1743</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1744"><td class="num" id="LN1744">1744</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1745"><td class="num" id="LN1745">1745</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1746"><td class="num" id="LN1746">1746</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1747"><td class="num" id="LN1747">1747</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1748"><td class="num" id="LN1748">1748</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1749"><td class="num" id="LN1749">1749</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1750"><td class="num" id="LN1750">1750</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1751"><td class="num" id="LN1751">1751</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1752"><td class="num" id="LN1752">1752</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1753"><td class="num" id="LN1753">1753</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1754"><td class="num" id="LN1754">1754</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1755"><td class="num" id="LN1755">1755</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1756"><td class="num" id="LN1756">1756</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1757"><td class="num" id="LN1757">1757</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1758"><td class="num" id="LN1758">1758</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1759"><td class="num" id="LN1759">1759</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1760"><td class="num" id="LN1760">1760</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1761"><td class="num" id="LN1761">1761</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1762"><td class="num" id="LN1762">1762</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1763"><td class="num" id="LN1763">1763</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1764"><td class="num" id="LN1764">1764</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1765"><td class="num" id="LN1765">1765</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1766"><td class="num" id="LN1766">1766</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1767"><td class="num" id="LN1767">1767</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1768"><td class="num" id="LN1768">1768</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1769"><td class="num" id="LN1769">1769</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1770"><td class="num" id="LN1770">1770</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1771"><td class="num" id="LN1771">1771</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1772"><td class="num" id="LN1772">1772</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1773"><td class="num" id="LN1773">1773</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1774"><td class="num" id="LN1774">1774</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1775"><td class="num" id="LN1775">1775</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1776"><td class="num" id="LN1776">1776</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1777"><td class="num" id="LN1777">1777</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1778"><td class="num" id="LN1778">1778</td><td class="line"> <span class='comment'>// if we're scaling down horizontally</span></td></tr>
<tr class="codeline" data-linenumber="1779"><td class="num" id="LN1779">1779</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1780"><td class="num" id="LN1780">1780</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1781"><td class="num" id="LN1781">1781</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1782"><td class="num" id="LN1782">1782</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1783"><td class="num" id="LN1783">1783</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1784"><td class="num" id="LN1784">1784</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1785"><td class="num" id="LN1785">1785</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1786"><td class="num" id="LN1786">1786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1787"><td class="num" id="LN1787">1787</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1788"><td class="num" id="LN1788">1788</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1789"><td class="num" id="LN1789">1789</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1790"><td class="num" id="LN1790">1790</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1791"><td class="num" id="LN1791">1791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1792"><td class="num" id="LN1792">1792</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1793"><td class="num" id="LN1793">1793</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1794"><td class="num" id="LN1794">1794</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1795"><td class="num" id="LN1795">1795</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1796"><td class="num" id="LN1796">1796</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1797"><td class="num" id="LN1797">1797</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1798"><td class="num" id="LN1798">1798</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1799"><td class="num" id="LN1799">1799</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1800"><td class="num" id="LN1800">1800</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1801"><td class="num" id="LN1801">1801</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1802"><td class="num" id="LN1802">1802</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1803"><td class="num" id="LN1803">1803</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1804"><td class="num" id="LN1804">1804</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1805"><td class="num" id="LN1805">1805</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1806"><td class="num" id="LN1806">1806</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1807"><td class="num" id="LN1807">1807</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1808"><td class="num" id="LN1808">1808</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1809"><td class="num" id="LN1809">1809</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1810"><td class="num" id="LN1810">1810</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1811"><td class="num" id="LN1811">1811</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1812"><td class="num" id="LN1812">1812</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1813"><td class="num" id="LN1813">1813</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1814"><td class="num" id="LN1814">1814</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1815"><td class="num" id="LN1815">1815</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1816"><td class="num" id="LN1816">1816</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1817"><td class="num" id="LN1817">1817</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1818"><td class="num" id="LN1818">1818</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1819"><td class="num" id="LN1819">1819</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1820"><td class="num" id="LN1820">1820</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1821"><td class="num" id="LN1821">1821</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1822"><td class="num" id="LN1822">1822</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1823"><td class="num" id="LN1823">1823</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1824"><td class="num" id="LN1824">1824</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1825"><td class="num" id="LN1825">1825</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1826"><td class="num" id="LN1826">1826</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1827"><td class="num" id="LN1827">1827</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1828"><td class="num" id="LN1828">1828</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1829"><td class="num" id="LN1829">1829</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1830"><td class="num" id="LN1830">1830</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1831"><td class="num" id="LN1831">1831</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1832"><td class="num" id="LN1832">1832</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1833"><td class="num" id="LN1833">1833</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1834"><td class="num" id="LN1834">1834</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1835"><td class="num" id="LN1835">1835</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1836"><td class="num" id="LN1836">1836</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1837"><td class="num" id="LN1837">1837</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1838"><td class="num" id="LN1838">1838</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1839"><td class="num" id="LN1839">1839</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1840"><td class="num" id="LN1840">1840</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1841"><td class="num" id="LN1841">1841</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1842"><td class="num" id="LN1842">1842</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1843"><td class="num" id="LN1843">1843</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1844"><td class="num" id="LN1844">1844</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1845"><td class="num" id="LN1845">1845</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1846"><td class="num" id="LN1846">1846</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1847"><td class="num" id="LN1847">1847</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1848"><td class="num" id="LN1848">1848</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1849"><td class="num" id="LN1849">1849</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1850"><td class="num" id="LN1850">1850</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1851"><td class="num" id="LN1851">1851</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1852"><td class="num" id="LN1852">1852</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1853"><td class="num" id="LN1853">1853</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1854"><td class="num" id="LN1854">1854</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1855"><td class="num" id="LN1855">1855</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1856"><td class="num" id="LN1856">1856</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1857"><td class="num" id="LN1857">1857</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1858"><td class="num" id="LN1858">1858</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1859"><td class="num" id="LN1859">1859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1860"><td class="num" id="LN1860">1860</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1861"><td class="num" id="LN1861">1861</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1862"><td class="num" id="LN1862">1862</td><td class="line"> <span class='comment'>// fully optimized (i think) - only change of algorithm can help</span></td></tr>
<tr class="codeline" data-linenumber="1863"><td class="num" id="LN1863">1863</td><td class="line"> <span class='comment'>// if we're scaling down horizontally &amp; vertically</span></td></tr>
<tr class="codeline" data-linenumber="1864"><td class="num" id="LN1864">1864</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1865"><td class="num" id="LN1865">1865</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1866"><td class="num" id="LN1866">1866</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1867"><td class="num" id="LN1867">1867</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1868"><td class="num" id="LN1868">1868</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1869"><td class="num" id="LN1869">1869</td><td class="line"> llong r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1870"><td class="num" id="LN1870">1870</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1871"><td class="num" id="LN1871">1871</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1872"><td class="num" id="LN1872">1872</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1873"><td class="num" id="LN1873">1873</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1874"><td class="num" id="LN1874">1874</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1875"><td class="num" id="LN1875">1875</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1876"><td class="num" id="LN1876">1876</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1877"><td class="num" id="LN1877">1877</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1878"><td class="num" id="LN1878">1878</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; <span class="mrange">x &lt; x_end</span>; ++x)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgEvent" style="margin-left:31ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Assuming 'x' is &lt; 'x_end'</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#EndPath" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1879"><td class="num" id="LN1879">1879</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1880"><td class="num" id="LN1880">1880</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1881"><td class="num" id="LN1881">1881</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1882"><td class="num" id="LN1882">1882</td><td class="line"> sptr = <span class="mrange">ypoints</span>[dyy + y] + xpoints[x];</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:24ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Array access (from variable 'ypoints') results in a null pointer dereference</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1883"><td class="num" id="LN1883">1883</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1884"><td class="num" id="LN1884">1884</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1885"><td class="num" id="LN1885">1885</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1886"><td class="num" id="LN1886">1886</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1887"><td class="num" id="LN1887">1887</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1888"><td class="num" id="LN1888">1888</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1889"><td class="num" id="LN1889">1889</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1890"><td class="num" id="LN1890">1890</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1891"><td class="num" id="LN1891">1891</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1892"><td class="num" id="LN1892">1892</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1893"><td class="num" id="LN1893">1893</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1894"><td class="num" id="LN1894">1894</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1895"><td class="num" id="LN1895">1895</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1896"><td class="num" id="LN1896">1896</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1897"><td class="num" id="LN1897">1897</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1898"><td class="num" id="LN1898">1898</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1899"><td class="num" id="LN1899">1899</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1900"><td class="num" id="LN1900">1900</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1901"><td class="num" id="LN1901">1901</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1902"><td class="num" id="LN1902">1902</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1903"><td class="num" id="LN1903">1903</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1904"><td class="num" id="LN1904">1904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1905"><td class="num" id="LN1905">1905</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1906"><td class="num" id="LN1906">1906</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1907"><td class="num" id="LN1907">1907</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1908"><td class="num" id="LN1908">1908</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1909"><td class="num" id="LN1909">1909</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1910"><td class="num" id="LN1910">1910</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1911"><td class="num" id="LN1911">1911</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1912"><td class="num" id="LN1912">1912</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1913"><td class="num" id="LN1913">1913</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1914"><td class="num" id="LN1914">1914</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1915"><td class="num" id="LN1915">1915</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1916"><td class="num" id="LN1916">1916</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1917"><td class="num" id="LN1917">1917</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1918"><td class="num" id="LN1918">1918</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1919"><td class="num" id="LN1919">1919</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1920"><td class="num" id="LN1920">1920</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1921"><td class="num" id="LN1921">1921</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1922"><td class="num" id="LN1922">1922</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1923"><td class="num" id="LN1923">1923</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1924"><td class="num" id="LN1924">1924</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1925"><td class="num" id="LN1925">1925</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1926"><td class="num" id="LN1926">1926</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1927"><td class="num" id="LN1927">1927</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1928"><td class="num" id="LN1928">1928</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1929"><td class="num" id="LN1929">1929</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1930"><td class="num" id="LN1930">1930</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1931"><td class="num" id="LN1931">1931</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1932"><td class="num" id="LN1932">1932</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1933"><td class="num" id="LN1933">1933</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1934"><td class="num" id="LN1934">1934</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1935"><td class="num" id="LN1935">1935</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1936"><td class="num" id="LN1936">1936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1937"><td class="num" id="LN1937">1937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1938"><td class="num" id="LN1938">1938</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1939"><td class="num" id="LN1939">1939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1940"><td class="num" id="LN1940">1940</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1941"><td class="num" id="LN1941">1941</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1942"><td class="num" id="LN1942">1942</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1943"><td class="num" id="LN1943">1943</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1944"><td class="num" id="LN1944">1944</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1945"><td class="num" id="LN1945">1945</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1946"><td class="num" id="LN1946">1946</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1947"><td class="num" id="LN1947">1947</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1948"><td class="num" id="LN1948">1948</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1949"><td class="num" id="LN1949">1949</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1950"><td class="num" id="LN1950">1950</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1951"><td class="num" id="LN1951">1951</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1952"><td class="num" id="LN1952">1952</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1953"><td class="num" id="LN1953">1953</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1954"><td class="num" id="LN1954">1954</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1955"><td class="num" id="LN1955">1955</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1956"><td class="num" id="LN1956">1956</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1957"><td class="num" id="LN1957">1957</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1958"><td class="num" id="LN1958">1958</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1959"><td class="num" id="LN1959">1959</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1960"><td class="num" id="LN1960">1960</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1961"><td class="num" id="LN1961">1961</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1962"><td class="num" id="LN1962">1962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1963"><td class="num" id="LN1963">1963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1964"><td class="num" id="LN1964">1964</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1965"><td class="num" id="LN1965">1965</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1966"><td class="num" id="LN1966">1966</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1967"><td class="num" id="LN1967">1967</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1968"><td class="num" id="LN1968">1968</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1969"><td class="num" id="LN1969">1969</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1970"><td class="num" id="LN1970">1970</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1971"><td class="num" id="LN1971">1971</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1972"><td class="num" id="LN1972">1972</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1973"><td class="num" id="LN1973">1973</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1974"><td class="num" id="LN1974">1974</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1975"><td class="num" id="LN1975">1975</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1976"><td class="num" id="LN1976">1976</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1977"><td class="num" id="LN1977">1977</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1978"><td class="num" id="LN1978">1978</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1979"><td class="num" id="LN1979">1979</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1980"><td class="num" id="LN1980">1980</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1981"><td class="num" id="LN1981">1981</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1982"><td class="num" id="LN1982">1982</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow</td></tr>
<tr class="codeline" data-linenumber="1983"><td class="num" id="LN1983">1983</td><td class="line"> )</td></tr>
<tr class="codeline" data-linenumber="1984"><td class="num" id="LN1984">1984</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1985"><td class="num" id="LN1985">1985</td><td class="line"> dimgScaleAARGBA16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1986"><td class="num" id="LN1986">1986</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1987"><td class="num" id="LN1987">1987</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1988"><td class="num" id="LN1988">1988</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1989"><td class="num" id="LN1989">1989</td><td class="line"><span class='comment'>/* scale by area sampling */</span></td></tr>
<tr class="codeline" data-linenumber="1990"><td class="num" id="LN1990">1990</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1991"><td class="num" id="LN1991">1991</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1992"><td class="num" id="LN1992">1992</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1993"><td class="num" id="LN1993">1993</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1994"><td class="num" id="LN1994">1994</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1995"><td class="num" id="LN1995">1995</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1996"><td class="num" id="LN1996">1996</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1997"><td class="num" id="LN1997">1997</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1998"><td class="num" id="LN1998">1998</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1999"><td class="num" id="LN1999">1999</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2000"><td class="num" id="LN2000">2000</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2001"><td class="num" id="LN2001">2001</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="2002"><td class="num" id="LN2002">2002</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="2003"><td class="num" id="LN2003">2003</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="2004"><td class="num" id="LN2004">2004</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="2005"><td class="num" id="LN2005">2005</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="2006"><td class="num" id="LN2006">2006</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2007"><td class="num" id="LN2007">2007</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="2008"><td class="num" id="LN2008">2008</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="2009"><td class="num" id="LN2009">2009</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="2010"><td class="num" id="LN2010">2010</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="2011"><td class="num" id="LN2011">2011</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2012"><td class="num" id="LN2012">2012</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="2013"><td class="num" id="LN2013">2013</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="2014"><td class="num" id="LN2014">2014</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2015"><td class="num" id="LN2015">2015</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2016"><td class="num" id="LN2016">2016</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2017"><td class="num" id="LN2017">2017</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2018"><td class="num" id="LN2018">2018</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="2019"><td class="num" id="LN2019">2019</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2020"><td class="num" id="LN2020">2020</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="2021"><td class="num" id="LN2021">2021</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2022"><td class="num" id="LN2022">2022</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2023"><td class="num" id="LN2023">2023</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2024"><td class="num" id="LN2024">2024</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2025"><td class="num" id="LN2025">2025</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2026"><td class="num" id="LN2026">2026</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2027"><td class="num" id="LN2027">2027</td><td class="line"> llong rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2028"><td class="num" id="LN2028">2028</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2029"><td class="num" id="LN2029">2029</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2030"><td class="num" id="LN2030">2030</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2031"><td class="num" id="LN2031">2031</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2032"><td class="num" id="LN2032">2032</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2033"><td class="num" id="LN2033">2033</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2034"><td class="num" id="LN2034">2034</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2035"><td class="num" id="LN2035">2035</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2036"><td class="num" id="LN2036">2036</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2037"><td class="num" id="LN2037">2037</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2038"><td class="num" id="LN2038">2038</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2039"><td class="num" id="LN2039">2039</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2040"><td class="num" id="LN2040">2040</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2041"><td class="num" id="LN2041">2041</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2042"><td class="num" id="LN2042">2042</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2043"><td class="num" id="LN2043">2043</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2044"><td class="num" id="LN2044">2044</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2045"><td class="num" id="LN2045">2045</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2046"><td class="num" id="LN2046">2046</td><td class="line"> aa = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2047"><td class="num" id="LN2047">2047</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="2048"><td class="num" id="LN2048">2048</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2049"><td class="num" id="LN2049">2049</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2050"><td class="num" id="LN2050">2050</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2051"><td class="num" id="LN2051">2051</td><td class="line"> aa += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2052"><td class="num" id="LN2052">2052</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2053"><td class="num" id="LN2053">2053</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2054"><td class="num" id="LN2054">2054</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2055"><td class="num" id="LN2055">2055</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2056"><td class="num" id="LN2056">2056</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2057"><td class="num" id="LN2057">2057</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2058"><td class="num" id="LN2058">2058</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2059"><td class="num" id="LN2059">2059</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2060"><td class="num" id="LN2060">2060</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2061"><td class="num" id="LN2061">2061</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2062"><td class="num" id="LN2062">2062</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2063"><td class="num" id="LN2063">2063</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2064"><td class="num" id="LN2064">2064</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2065"><td class="num" id="LN2065">2065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2066"><td class="num" id="LN2066">2066</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2067"><td class="num" id="LN2067">2067</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2068"><td class="num" id="LN2068">2068</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2069"><td class="num" id="LN2069">2069</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2070"><td class="num" id="LN2070">2070</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2071"><td class="num" id="LN2071">2071</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2072"><td class="num" id="LN2072">2072</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2073"><td class="num" id="LN2073">2073</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2074"><td class="num" id="LN2074">2074</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2075"><td class="num" id="LN2075">2075</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2076"><td class="num" id="LN2076">2076</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2077"><td class="num" id="LN2077">2077</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2078"><td class="num" id="LN2078">2078</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2079"><td class="num" id="LN2079">2079</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2080"><td class="num" id="LN2080">2080</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2081"><td class="num" id="LN2081">2081</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2082"><td class="num" id="LN2082">2082</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2083"><td class="num" id="LN2083">2083</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2084"><td class="num" id="LN2084">2084</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2085"><td class="num" id="LN2085">2085</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2086"><td class="num" id="LN2086">2086</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2087"><td class="num" id="LN2087">2087</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2088"><td class="num" id="LN2088">2088</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2089"><td class="num" id="LN2089">2089</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2090"><td class="num" id="LN2090">2090</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2091"><td class="num" id="LN2091">2091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2092"><td class="num" id="LN2092">2092</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2093"><td class="num" id="LN2093">2093</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2094"><td class="num" id="LN2094">2094</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2095"><td class="num" id="LN2095">2095</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2096"><td class="num" id="LN2096">2096</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2097"><td class="num" id="LN2097">2097</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2098"><td class="num" id="LN2098">2098</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2099"><td class="num" id="LN2099">2099</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2100"><td class="num" id="LN2100">2100</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2101"><td class="num" id="LN2101">2101</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2102"><td class="num" id="LN2102">2102</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2103"><td class="num" id="LN2103">2103</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2104"><td class="num" id="LN2104">2104</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2105"><td class="num" id="LN2105">2105</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2106"><td class="num" id="LN2106">2106</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2107"><td class="num" id="LN2107">2107</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2108"><td class="num" id="LN2108">2108</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2109"><td class="num" id="LN2109">2109</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2110"><td class="num" id="LN2110">2110</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2111"><td class="num" id="LN2111">2111</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2112"><td class="num" id="LN2112">2112</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2113"><td class="num" id="LN2113">2113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2114"><td class="num" id="LN2114">2114</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2115"><td class="num" id="LN2115">2115</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2116"><td class="num" id="LN2116">2116</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2117"><td class="num" id="LN2117">2117</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2118"><td class="num" id="LN2118">2118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2119"><td class="num" id="LN2119">2119</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2120"><td class="num" id="LN2120">2120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2121"><td class="num" id="LN2121">2121</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2122"><td class="num" id="LN2122">2122</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2123"><td class="num" id="LN2123">2123</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="2124"><td class="num" id="LN2124">2124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2125"><td class="num" id="LN2125">2125</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2126"><td class="num" id="LN2126">2126</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2127"><td class="num" id="LN2127">2127</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2128"><td class="num" id="LN2128">2128</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2129"><td class="num" id="LN2129">2129</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2130"><td class="num" id="LN2130">2130</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="2131"><td class="num" id="LN2131">2131</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2132"><td class="num" id="LN2132">2132</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2133"><td class="num" id="LN2133">2133</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="2134"><td class="num" id="LN2134">2134</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2135"><td class="num" id="LN2135">2135</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2136"><td class="num" id="LN2136">2136</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="2137"><td class="num" id="LN2137">2137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2138"><td class="num" id="LN2138">2138</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2139"><td class="num" id="LN2139">2139</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2140"><td class="num" id="LN2140">2140</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2141"><td class="num" id="LN2141">2141</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2142"><td class="num" id="LN2142">2142</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2143"><td class="num" id="LN2143">2143</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2144"><td class="num" id="LN2144">2144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2145"><td class="num" id="LN2145">2145</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2146"><td class="num" id="LN2146">2146</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2147"><td class="num" id="LN2147">2147</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2148"><td class="num" id="LN2148">2148</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2149"><td class="num" id="LN2149">2149</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2150"><td class="num" id="LN2150">2150</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2151"><td class="num" id="LN2151">2151</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2152"><td class="num" id="LN2152">2152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2153"><td class="num" id="LN2153">2153</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2154"><td class="num" id="LN2154">2154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2155"><td class="num" id="LN2155">2155</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2156"><td class="num" id="LN2156">2156</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2157"><td class="num" id="LN2157">2157</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2158"><td class="num" id="LN2158">2158</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2159"><td class="num" id="LN2159">2159</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2160"><td class="num" id="LN2160">2160</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2161"><td class="num" id="LN2161">2161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2162"><td class="num" id="LN2162">2162</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2163"><td class="num" id="LN2163">2163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2164"><td class="num" id="LN2164">2164</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2165"><td class="num" id="LN2165">2165</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2166"><td class="num" id="LN2166">2166</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2167"><td class="num" id="LN2167">2167</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2168"><td class="num" id="LN2168">2168</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2169"><td class="num" id="LN2169">2169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2170"><td class="num" id="LN2170">2170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2171"><td class="num" id="LN2171">2171</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2172"><td class="num" id="LN2172">2172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2173"><td class="num" id="LN2173">2173</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="2174"><td class="num" id="LN2174">2174</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2175"><td class="num" id="LN2175">2175</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2176"><td class="num" id="LN2176">2176</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2177"><td class="num" id="LN2177">2177</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2178"><td class="num" id="LN2178">2178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2179"><td class="num" id="LN2179">2179</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2180"><td class="num" id="LN2180">2180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2181"><td class="num" id="LN2181">2181</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2182"><td class="num" id="LN2182">2182</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2183"><td class="num" id="LN2183">2183</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2184"><td class="num" id="LN2184">2184</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2185"><td class="num" id="LN2185">2185</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2186"><td class="num" id="LN2186">2186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2187"><td class="num" id="LN2187">2187</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2188"><td class="num" id="LN2188">2188</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2189"><td class="num" id="LN2189">2189</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2190"><td class="num" id="LN2190">2190</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2191"><td class="num" id="LN2191">2191</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2192"><td class="num" id="LN2192">2192</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2193"><td class="num" id="LN2193">2193</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2194"><td class="num" id="LN2194">2194</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2195"><td class="num" id="LN2195">2195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2196"><td class="num" id="LN2196">2196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2197"><td class="num" id="LN2197">2197</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2198"><td class="num" id="LN2198">2198</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2199"><td class="num" id="LN2199">2199</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2200"><td class="num" id="LN2200">2200</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2201"><td class="num" id="LN2201">2201</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2202"><td class="num" id="LN2202">2202</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2203"><td class="num" id="LN2203">2203</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2204"><td class="num" id="LN2204">2204</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2205"><td class="num" id="LN2205">2205</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2206"><td class="num" id="LN2206">2206</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2207"><td class="num" id="LN2207">2207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2208"><td class="num" id="LN2208">2208</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2209"><td class="num" id="LN2209">2209</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2210"><td class="num" id="LN2210">2210</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2211"><td class="num" id="LN2211">2211</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2212"><td class="num" id="LN2212">2212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2213"><td class="num" id="LN2213">2213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2214"><td class="num" id="LN2214">2214</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2215"><td class="num" id="LN2215">2215</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2216"><td class="num" id="LN2216">2216</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2217"><td class="num" id="LN2217">2217</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2218"><td class="num" id="LN2218">2218</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2219"><td class="num" id="LN2219">2219</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2220"><td class="num" id="LN2220">2220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2221"><td class="num" id="LN2221">2221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2222"><td class="num" id="LN2222">2222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2223"><td class="num" id="LN2223">2223</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="2224"><td class="num" id="LN2224">2224</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="2225"><td class="num" id="LN2225">2225</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2226"><td class="num" id="LN2226">2226</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2227"><td class="num" id="LN2227">2227</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="2228"><td class="num" id="LN2228">2228</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2229"><td class="num" id="LN2229">2229</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2230"><td class="num" id="LN2230">2230</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="2231"><td class="num" id="LN2231">2231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2232"><td class="num" id="LN2232">2232</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2233"><td class="num" id="LN2233">2233</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2234"><td class="num" id="LN2234">2234</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2235"><td class="num" id="LN2235">2235</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2236"><td class="num" id="LN2236">2236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2237"><td class="num" id="LN2237">2237</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2238"><td class="num" id="LN2238">2238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2239"><td class="num" id="LN2239">2239</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2240"><td class="num" id="LN2240">2240</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2241"><td class="num" id="LN2241">2241</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2242"><td class="num" id="LN2242">2242</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2243"><td class="num" id="LN2243">2243</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2244"><td class="num" id="LN2244">2244</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2245"><td class="num" id="LN2245">2245</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2246"><td class="num" id="LN2246">2246</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2247"><td class="num" id="LN2247">2247</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2248"><td class="num" id="LN2248">2248</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2249"><td class="num" id="LN2249">2249</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2250"><td class="num" id="LN2250">2250</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2251"><td class="num" id="LN2251">2251</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2252"><td class="num" id="LN2252">2252</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2253"><td class="num" id="LN2253">2253</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2254"><td class="num" id="LN2254">2254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2255"><td class="num" id="LN2255">2255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2256"><td class="num" id="LN2256">2256</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2257"><td class="num" id="LN2257">2257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2258"><td class="num" id="LN2258">2258</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2259"><td class="num" id="LN2259">2259</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2260"><td class="num" id="LN2260">2260</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2261"><td class="num" id="LN2261">2261</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2262"><td class="num" id="LN2262">2262</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2263"><td class="num" id="LN2263">2263</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2264"><td class="num" id="LN2264">2264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2265"><td class="num" id="LN2265">2265</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2266"><td class="num" id="LN2266">2266</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2267"><td class="num" id="LN2267">2267</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="2268"><td class="num" id="LN2268">2268</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2269"><td class="num" id="LN2269">2269</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2270"><td class="num" id="LN2270">2270</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2271"><td class="num" id="LN2271">2271</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2272"><td class="num" id="LN2272">2272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2273"><td class="num" id="LN2273">2273</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2274"><td class="num" id="LN2274">2274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2275"><td class="num" id="LN2275">2275</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2276"><td class="num" id="LN2276">2276</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2277"><td class="num" id="LN2277">2277</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2278"><td class="num" id="LN2278">2278</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2279"><td class="num" id="LN2279">2279</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2280"><td class="num" id="LN2280">2280</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2281"><td class="num" id="LN2281">2281</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2282"><td class="num" id="LN2282">2282</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2283"><td class="num" id="LN2283">2283</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2284"><td class="num" id="LN2284">2284</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2285"><td class="num" id="LN2285">2285</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2286"><td class="num" id="LN2286">2286</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2287"><td class="num" id="LN2287">2287</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2288"><td class="num" id="LN2288">2288</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2289"><td class="num" id="LN2289">2289</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2290"><td class="num" id="LN2290">2290</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2291"><td class="num" id="LN2291">2291</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2292"><td class="num" id="LN2292">2292</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2293"><td class="num" id="LN2293">2293</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2294"><td class="num" id="LN2294">2294</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2295"><td class="num" id="LN2295">2295</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2296"><td class="num" id="LN2296">2296</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2297"><td class="num" id="LN2297">2297</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2298"><td class="num" id="LN2298">2298</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2299"><td class="num" id="LN2299">2299</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2300"><td class="num" id="LN2300">2300</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2301"><td class="num" id="LN2301">2301</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2302"><td class="num" id="LN2302">2302</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2303"><td class="num" id="LN2303">2303</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2304"><td class="num" id="LN2304">2304</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2305"><td class="num" id="LN2305">2305</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2306"><td class="num" id="LN2306">2306</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2307"><td class="num" id="LN2307">2307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2308"><td class="num" id="LN2308">2308</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2309"><td class="num" id="LN2309">2309</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2310"><td class="num" id="LN2310">2310</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2311"><td class="num" id="LN2311">2311</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2312"><td class="num" id="LN2312">2312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2313"><td class="num" id="LN2313">2313</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2314"><td class="num" id="LN2314">2314</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2315"><td class="num" id="LN2315">2315</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2316"><td class="num" id="LN2316">2316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2317"><td class="num" id="LN2317">2317</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2318"><td class="num" id="LN2318">2318</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2319"><td class="num" id="LN2319">2319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2320"><td class="num" id="LN2320">2320</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="2321"><td class="num" id="LN2321">2321</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="2322"><td class="num" id="LN2322">2322</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="2323"><td class="num" id="LN2323">2323</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="2324"><td class="num" id="LN2324">2324</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="2325"><td class="num" id="LN2325">2325</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="2326"><td class="num" id="LN2326">2326</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2327"><td class="num" id="LN2327">2327</td><td class="line"> llong a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="2328"><td class="num" id="LN2328">2328</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="2329"><td class="num" id="LN2329">2329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2330"><td class="num" id="LN2330">2330</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2331"><td class="num" id="LN2331">2331</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2332"><td class="num" id="LN2332">2332</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2333"><td class="num" id="LN2333">2333</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2334"><td class="num" id="LN2334">2334</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2335"><td class="num" id="LN2335">2335</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2336"><td class="num" id="LN2336">2336</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2337"><td class="num" id="LN2337">2337</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2338"><td class="num" id="LN2338">2338</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2339"><td class="num" id="LN2339">2339</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2340"><td class="num" id="LN2340">2340</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2341"><td class="num" id="LN2341">2341</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2342"><td class="num" id="LN2342">2342</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2343"><td class="num" id="LN2343">2343</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2344"><td class="num" id="LN2344">2344</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2345"><td class="num" id="LN2345">2345</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2346"><td class="num" id="LN2346">2346</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2347"><td class="num" id="LN2347">2347</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2348"><td class="num" id="LN2348">2348</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2349"><td class="num" id="LN2349">2349</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2350"><td class="num" id="LN2350">2350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2351"><td class="num" id="LN2351">2351</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2352"><td class="num" id="LN2352">2352</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2353"><td class="num" id="LN2353">2353</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2354"><td class="num" id="LN2354">2354</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2355"><td class="num" id="LN2355">2355</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2356"><td class="num" id="LN2356">2356</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2357"><td class="num" id="LN2357">2357</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2358"><td class="num" id="LN2358">2358</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2359"><td class="num" id="LN2359">2359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2360"><td class="num" id="LN2360">2360</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2361"><td class="num" id="LN2361">2361</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2362"><td class="num" id="LN2362">2362</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2363"><td class="num" id="LN2363">2363</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2364"><td class="num" id="LN2364">2364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2365"><td class="num" id="LN2365">2365</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2366"><td class="num" id="LN2366">2366</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2367"><td class="num" id="LN2367">2367</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2368"><td class="num" id="LN2368">2368</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2369"><td class="num" id="LN2369">2369</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2370"><td class="num" id="LN2370">2370</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2371"><td class="num" id="LN2371">2371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2372"><td class="num" id="LN2372">2372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2373"><td class="num" id="LN2373">2373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2374"><td class="num" id="LN2374">2374</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2375"><td class="num" id="LN2375">2375</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2376"><td class="num" id="LN2376">2376</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2377"><td class="num" id="LN2377">2377</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2378"><td class="num" id="LN2378">2378</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2379"><td class="num" id="LN2379">2379</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2380"><td class="num" id="LN2380">2380</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2381"><td class="num" id="LN2381">2381</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2382"><td class="num" id="LN2382">2382</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2383"><td class="num" id="LN2383">2383</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2384"><td class="num" id="LN2384">2384</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2385"><td class="num" id="LN2385">2385</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2386"><td class="num" id="LN2386">2386</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2387"><td class="num" id="LN2387">2387</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2388"><td class="num" id="LN2388">2388</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2389"><td class="num" id="LN2389">2389</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2390"><td class="num" id="LN2390">2390</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2391"><td class="num" id="LN2391">2391</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2392"><td class="num" id="LN2392">2392</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2393"><td class="num" id="LN2393">2393</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2394"><td class="num" id="LN2394">2394</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2395"><td class="num" id="LN2395">2395</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2396"><td class="num" id="LN2396">2396</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2397"><td class="num" id="LN2397">2397</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2398"><td class="num" id="LN2398">2398</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2399"><td class="num" id="LN2399">2399</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2400"><td class="num" id="LN2400">2400</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2401"><td class="num" id="LN2401">2401</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2402"><td class="num" id="LN2402">2402</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2403"><td class="num" id="LN2403">2403</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2404"><td class="num" id="LN2404">2404</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2405"><td class="num" id="LN2405">2405</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2406"><td class="num" id="LN2406">2406</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2407"><td class="num" id="LN2407">2407</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2408"><td class="num" id="LN2408">2408</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2409"><td class="num" id="LN2409">2409</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="2410"><td class="num" id="LN2410">2410</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2411"><td class="num" id="LN2411">2411</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2412"><td class="num" id="LN2412">2412</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2413"><td class="num" id="LN2413">2413</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2414"><td class="num" id="LN2414">2414</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2415"><td class="num" id="LN2415">2415</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2416"><td class="num" id="LN2416">2416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2417"><td class="num" id="LN2417">2417</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2418"><td class="num" id="LN2418">2418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2419"><td class="num" id="LN2419">2419</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2420"><td class="num" id="LN2420">2420</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2421"><td class="num" id="LN2421">2421</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2422"><td class="num" id="LN2422">2422</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2423"><td class="num" id="LN2423">2423</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2424"><td class="num" id="LN2424">2424</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2425"><td class="num" id="LN2425">2425</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2426"><td class="num" id="LN2426">2426</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2427"><td class="num" id="LN2427">2427</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2428"><td class="num" id="LN2428">2428</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2429"><td class="num" id="LN2429">2429</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2430"><td class="num" id="LN2430">2430</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2431"><td class="num" id="LN2431">2431</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2432"><td class="num" id="LN2432">2432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2433"><td class="num" id="LN2433">2433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2434"><td class="num" id="LN2434">2434</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2435"><td class="num" id="LN2435">2435</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2436"><td class="num" id="LN2436">2436</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2437"><td class="num" id="LN2437">2437</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2438"><td class="num" id="LN2438">2438</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2439"><td class="num" id="LN2439">2439</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2440"><td class="num" id="LN2440">2440</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2441"><td class="num" id="LN2441">2441</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2442"><td class="num" id="LN2442">2442</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2443"><td class="num" id="LN2443">2443</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2444"><td class="num" id="LN2444">2444</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2445"><td class="num" id="LN2445">2445</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2446"><td class="num" id="LN2446">2446</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2447"><td class="num" id="LN2447">2447</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2448"><td class="num" id="LN2448">2448</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="2449"><td class="num" id="LN2449">2449</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2450"><td class="num" id="LN2450">2450</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-539026.html b/static/reports/clang/master/report-94f444.html
similarity index 99%
rename from static/reports/clang/master/report-539026.html
rename to static/reports/clang/master/report-94f444.html
index 5b4ab0c60..c5cccadd1 100644
--- a/static/reports/clang/master/report-539026.html
+++ b/static/reports/clang/master/report-94f444.html
@@ -1,1592 +1,1592 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC The result of the '%' expression is undefined -->
<!-- BUGTYPE Result of operation is garbage or undefined -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp -->
<!-- FILENAME haariface.cpp -->
<!-- FUNCTIONNAME findDuplicates -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT eb8d9e8138893920f90a806452297c0e -->
<!-- BUGLINE 1181 -->
<!-- BUGCOLUMN 56 -->
<!-- BUGPATHLENGTH 24 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 1181, column 56</a><br />The result of the '%' expression is undefined</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name haariface.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/libs/database/digikamdatabase_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name haariface.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/libs/database/digikamdatabase_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"966": 1, "967": 1, "968": 1, "969": 1, "970": 1, "971": 1, "972": 1, "973": 1, "974": 1, "976": 1, "977": 1, "978": 1, "979": 1, "980": 1, "981": 1, "982": 1, "1020": 1, "1021": 1, "1022": 1, "1023": 1, "1024": 1, "1025": 1, "1026": 1, "1027": 1, "1028": 1, "1029": 1, "1030": 1, "1032": 1, "1035": 1, "1041": 1, "1046": 1, "1083": 1, "1093": 1, "1098": 1, "1101": 1, "1102": 1, "1103": 1, "1104": 1, "1105": 1, "1106": 1, "1107": 1, "1108": 1, "1109": 1, "1110": 1, "1111": 1, "1112": 1, "1113": 1, "1115": 1, "1116": 1, "1117": 1, "1119": 1, "1121": 1, "1122": 1, "1123": 1, "1127": 1, "1129": 1, "1131": 1, "1136": 1, "1174": 1, "1179": 1, "1181": 1, "1183": 1}, "7": {"596": 1, "963": 1, "973": 1, "976": 1, "1002": 1, "1003": 1, "1004": 1}, "318": {"73": 1, "74": 1, "75": 1}, "11232": {"54": 1, "55": 1, "56": 1, "57": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2003-01-17</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Haar Database interface</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2016-2018 by Mario Frank &lt;mario dot frank at uni minus potsdam dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2003 by Ricardo Niederberger Cabral &lt;nieder at mail dot ru&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2009-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* Copyright (C) 2009-2013 by Marcel Wiesweg &lt;marcel dot wiesweg at gmx dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Copyright (C) 2009-2011 by Andi Clemens &lt;andi dot clemens at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include "haariface.h"</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;fstream&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;cmath&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;cstring&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include &lt;QByteArray&gt;</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='directive'>#include &lt;QDataStream&gt;</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include &lt;QImage&gt;</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include &lt;QImageReader&gt;</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include &lt;QMap&gt;</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "jpegutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "iteminfo.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "coredbaccess.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='directive'>#include "coredbtransaction.h"</span></td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='directive'>#include "coredb.h"</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='directive'>#include "coredbbackend.h"</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='directive'>#include "coredbsearchxml.h"</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='directive'>#include "dbenginesqlquery.h"</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='directive'>#include "similaritydb.h"</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='directive'>#include "similaritydbaccess.h"</span></td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> std;</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='comment'>// TODO: Always store similarities in the similaritydb</span></td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"><span class='keyword'>typedef</span> QMap&lt;qlonglong, Haar::SignatureData&gt; SignatureCache;</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"><span class='keyword'>typedef</span> QMap&lt;qlonglong, <span class='keyword'>int</span>&gt; AlbumCache;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"><span class='comment'>/** This class encapsulates the Haar signature in a QByteArray</span></td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> <span class='comment'>* that can be stored as a BLOB in the database.</span></td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='comment'>* Reading and writing is done in a platform-independent manner, which</span></td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> <span class='comment'>* induces a certain overhead, but which is necessary IMO.</span></td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> DatabaseBlob</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='keyword'>enum</span></td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> Version = 1</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> };</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> DatabaseBlob() = <span class='keyword'>default</span>;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='comment'>/** Read the QByteArray into the Haar::SignatureData.</span></td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='keyword'>void</span> read(<span class='keyword'>const</span> QByteArray&amp; array, Haar::SignatureData* <span class='keyword'>const</span> data)</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> QDataStream stream(array);</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class='comment'>// check version</span></td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> qint32 version;</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> stream &gt;&gt; version;</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>if</span> (version != Version)</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp", 100<br>, __PRETTY_FUNCTION__, DIGIKAM_DATABASE_LOG().categoryName())<br>.debug()</span></span> &lt;&lt; <span class='string_literal'>"Unsupported binary version of Haar Blob in database"</span>;</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> stream.setVersion(QDataStream::Qt_4_3);</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> <span class='comment'>// read averages</span></td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; 3 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> stream &gt;&gt; data-&gt;avg[i];</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='comment'>// read coefficients</span></td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; 3 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; j &lt; Haar::NumberOfCoefficients ; ++j)</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> stream &gt;&gt; data-&gt;sig[i][j];</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> QByteArray write(Haar::SignatureData* <span class='keyword'>const</span> data)</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> QByteArray array;</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> array.reserve(<span class='keyword'>sizeof</span>(qint32) + 3*<span class='keyword'>sizeof</span>(<span class='keyword'>double</span>) + 3*<span class='keyword'>sizeof</span>(qint32)*Haar::NumberOfCoefficients);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> QDataStream stream(&amp;array, QIODevice::WriteOnly);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> stream.setVersion(QDataStream::Qt_4_3);</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// write version</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> stream &lt;&lt; (qint32)Version;</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='comment'>// write averages</span></td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; 3 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> stream &lt;&lt; data-&gt;avg[i];</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='comment'>// write coefficients</span></td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; 3 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> j = 0 ; j &lt; Haar::NumberOfCoefficients ; ++j)</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> stream &lt;&lt; data-&gt;sig[i][j];</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='keyword'>return</span> array;</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> HaarIface::Private</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> data = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> bin = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> signatureCache = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> albumCache = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> useSignatureCache = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> signatureQuery = QString::fromUtf8(<span class='string_literal'>"SELECT imageid, matrix FROM ImageHaarMatrix;"</span>);</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> ~Private()</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='keyword'>delete</span> data;</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='keyword'>delete</span> bin;</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>delete</span> signatureCache;</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='keyword'>delete</span> albumCache;</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>void</span> createLoadingBuffer()</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>if</span> (!data)</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> data = <span class='keyword'>new</span> Haar::ImageData;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>void</span> createWeightBin()</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>if</span> (!bin)</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> bin = <span class='keyword'>new</span> Haar::WeightBin;</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>void</span> setSignatureCacheEnabled(<span class='keyword'>bool</span> cache, <span class='keyword'>const</span> QSet&lt;qlonglong&gt;&amp; imageIds)</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> setSignatureCacheEnabled(cache);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> <span class='comment'>// stop here if we disable cached signatures</span></td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='keyword'>if</span> (!cache || imageIds.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='comment'>// Remove all ids from the fully created signatureCache that are not needed for the duplicates search.</span></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='comment'>// This is usually faster then starting a query for every single id in imageIds.</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='keyword'>for</span> (SignatureCache::iterator it = signatureCache-&gt;begin() ;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> it != signatureCache-&gt;end() ; )</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>if</span> (!imageIds.contains(it.key()))</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> it = signatureCache-&gt;erase(it);</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> ++it;</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>void</span> setSignatureCacheEnabled(<span class='keyword'>bool</span> cache)</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>delete</span> signatureCache;</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> signatureCache = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>delete</span> albumCache;</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> albumCache = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>if</span> (cache)</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> signatureCache = <span class='keyword'>new</span> SignatureCache();</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> albumCache = <span class='keyword'>new</span> AlbumCache();</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> useSignatureCache = cache;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> <span class='comment'>// stop here if we disable cached signatures</span></td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>if</span> (!cache)</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='comment'>// Variables for data read from DB</span></td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> DatabaseBlob blob;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> qlonglong imageid;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='keyword'>int</span> albumid;</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> Haar::SignatureData targetSig;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='comment'>// reference for easier access</span></td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> SignatureCache&amp; signatureCache = *<span class='keyword'>this</span>-&gt;signatureCache;</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> AlbumCache&amp; albumCache = *<span class='keyword'>this</span>-&gt;albumCache;</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> DbEngineSqlQuery query = SimilarityDbAccess().backend()-&gt;prepareQuery(signatureQuery);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>if</span> (!SimilarityDbAccess().backend()-&gt;exec(query))</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>const</span> QHash&lt;qlonglong, QPair&lt;<span class='keyword'>int</span>, <span class='keyword'>int</span>&gt; &gt;&amp; itemAlbumHash = CoreDbAccess().db()-&gt;getAllItemsWithAlbum();</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='keyword'>while</span> (query.next())</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> imageid = query.value(0).toLongLong();</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='keyword'>if</span> (itemAlbumHash.contains(imageid))</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> blob.read(query.value(1).toByteArray(), &amp;targetSig);</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> albumid = itemAlbumHash.value(imageid).second;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> signatureCache[imageid] = targetSig;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> albumCache[imageid] = albumid;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>bool</span> useSignatureCache;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> Haar::ImageData* data;</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> Haar::WeightBin* bin;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> SignatureCache* signatureCache;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> AlbumCache* albumCache;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> QString signatureQuery;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> QSet&lt;<span class='keyword'>int</span>&gt; albumRootsToSearch;</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line">HaarIface::HaarIface()</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> : d(<span class='keyword'>new</span> Private())</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line">HaarIface::~HaarIface()</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"><span class='keyword'>void</span> HaarIface::setAlbumRootsToSearch(<span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; albumRootIds)</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> setAlbumRootsToSearch(albumRootIds.toSet());</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"><span class='keyword'>void</span> HaarIface::setAlbumRootsToSearch(<span class='keyword'>const</span> QSet&lt;<span class='keyword'>int</span>&gt;&amp; albumRootIds)</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> d-&gt;albumRootsToSearch = albumRootIds;</td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"><span class='keyword'>int</span> HaarIface::preferredSize()</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> <span class='keyword'>return</span> Haar::NumberOfPixels;</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"><span class='keyword'>bool</span> HaarIface::indexImage(<span class='keyword'>const</span> QString&amp; filename)</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> QImage image = loadQImage(filename);</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='keyword'>if</span> (image.isNull())</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> <span class='keyword'>return</span> indexImage(filename, image);</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"><span class='keyword'>bool</span> HaarIface::indexImage(<span class='keyword'>const</span> QString&amp; filename, <span class='keyword'>const</span> QImage&amp; image)</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> ItemInfo info = ItemInfo::fromLocalFile(filename);</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> <span class='keyword'>if</span> (info.isNull())</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> <span class='keyword'>return</span> indexImage(info.id(), image);</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"><span class='keyword'>bool</span> HaarIface::indexImage(<span class='keyword'>const</span> QString&amp; filename, <span class='keyword'>const</span> DImg&amp; image)</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> ItemInfo info = ItemInfo::fromLocalFile(filename);</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> <span class='keyword'>if</span> (info.isNull())</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class='keyword'>return</span> indexImage(info.id(), image);</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"><span class='keyword'>bool</span> HaarIface::indexImage(qlonglong imageid, <span class='keyword'>const</span> QImage&amp; image)</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>if</span> (image.isNull())</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> d-&gt;createLoadingBuffer();</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> d-&gt;data-&gt;fillPixelData(image);</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> <span class='keyword'>return</span> indexImage(imageid);</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"><span class='keyword'>bool</span> HaarIface::indexImage(qlonglong imageid, <span class='keyword'>const</span> DImg&amp; image)</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> <span class='keyword'>if</span> (image.isNull())</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> d-&gt;createLoadingBuffer();</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> d-&gt;data-&gt;fillPixelData(image);</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> <span class='keyword'>return</span> indexImage(imageid);</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"><span class='comment'>// private method: d-&gt;data has been filled</span></td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"><span class='keyword'>bool</span> HaarIface::indexImage(qlonglong imageid)</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> Haar::Calculator haar;</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> haar.transform(d-&gt;data);</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> haar.calcHaar(d-&gt;data, &amp;sig);</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='comment'>// Store main entry</span></td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> DatabaseBlob blob;</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> QByteArray array = blob.write(&amp;sig);</td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> ItemInfo info(imageid);</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> <span class='keyword'>if</span> (!info.isNull() &amp;&amp; info.isVisible())</td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> SimilarityDbAccess().backend()-&gt;execSql(QString::fromUtf8(<span class='string_literal'>"REPLACE INTO ImageHaarMatrix "</span></td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> <span class='string_literal'>" (imageid, modificationDate, uniqueHash, matrix) "</span></td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> <span class='string_literal'>" VALUES(?, ?, ?, ?);"</span>),</td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> imageid, info.modDateTime(), info.uniqueHash(), array);</td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line">QString HaarIface::signatureAsText(<span class='keyword'>const</span> QImage&amp; image)</td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> d-&gt;createLoadingBuffer();</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> d-&gt;data-&gt;fillPixelData(image);</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> Haar::Calculator haar;</td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> haar.transform(d-&gt;data);</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> haar.calcHaar(d-&gt;data, &amp;sig);</td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> DatabaseBlob blob;</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> QByteArray array = blob.write(&amp;sig);</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> <span class='keyword'>return</span> QString::fromUtf8(array.toBase64());</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line">QList&lt;qlonglong&gt; HaarIface::bestMatchesForImage(<span class='keyword'>const</span> QImage&amp; image,</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> <span class='keyword'>int</span> numberOfResults, SketchType type)</td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> d-&gt;createLoadingBuffer();</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> d-&gt;data-&gt;fillPixelData(image);</td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> Haar::Calculator haar;</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> haar.transform(d-&gt;data);</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> haar.calcHaar(d-&gt;data, &amp;sig);</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> <span class='keyword'>return</span> bestMatches(&amp;sig, numberOfResults, targetAlbums, type).values();</td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line">QList&lt;qlonglong&gt; HaarIface::bestMatchesForImage(qlonglong imageid,</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>int</span> numberOfResults, SketchType type)</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> <span class='keyword'>if</span> (!retrieveSignatureFromDB(imageid, &amp;sig))</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>return</span> QList&lt;qlonglong&gt;();</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> <span class='keyword'>return</span> bestMatches(&amp;sig, numberOfResults, targetAlbums, type).values();</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line">QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt; HaarIface::bestMatchesForImageWithThreshold(<span class='keyword'>const</span> QString&amp; imagePath,</td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> SketchType type)</td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> d-&gt;createLoadingBuffer();</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> DImg image(imagePath);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> <span class='keyword'>if</span> (image.isNull())</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>return</span> QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt;();</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> d-&gt;data-&gt;fillPixelData(image);</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> Haar::Calculator haar;</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> haar.transform(d-&gt;data);</td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> haar.calcHaar(d-&gt;data, &amp;sig);</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> <span class='comment'>// Remove all previous similarities from pictures</span></td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> SimilarityDbAccess().db()-&gt;removeImageSimilarity(0);</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> <span class='comment'>// Apply duplicates search for the image. Use the image id 0 which cannot be present.</span></td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> <span class='keyword'>return</span> bestMatchesWithThreshold(0, &amp;sig, requiredPercentage, maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> targetAlbums, searchResultRestriction, type);</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line">QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt; HaarIface::bestMatchesForImageWithThreshold(qlonglong imageid,</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> SketchType type)</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;useSignatureCache || (d-&gt;signatureCache-&gt;isEmpty() &amp;&amp; d-&gt;useSignatureCache))</td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> <span class='keyword'>if</span> (!retrieveSignatureFromDB(imageid, &amp;sig))</td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> <span class='keyword'>return</span> QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt;();</td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> <span class='keyword'>return</span> bestMatchesWithThreshold(imageid, &amp;sig, requiredPercentage, maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> targetAlbums, searchResultRestriction, type);</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> <span class='comment'>// reference for easier access</span></td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> SignatureCache&amp; signatureCache = *d-&gt;signatureCache;</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> Haar::SignatureData&amp; sig = signatureCache[imageid];</td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> <span class='keyword'>return</span> bestMatchesWithThreshold(imageid, &amp;sig, requiredPercentage, maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> targetAlbums, searchResultRestriction, type);</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line">QList&lt;qlonglong&gt; HaarIface::bestMatchesForFile(<span class='keyword'>const</span> QString&amp; filename,</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> <span class='keyword'>int</span> numberOfResults, SketchType type)</td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> QImage image = loadQImage(filename);</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> <span class='keyword'>if</span> (image.isNull())</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> <span class='keyword'>return</span> QList&lt;qlonglong&gt;();</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> <span class='keyword'>return</span> bestMatchesForImage(image, targetAlbums, numberOfResults, type);</td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line">QMap&lt;qlonglong,<span class='keyword'>double</span>&gt; HaarIface::bestMatchesForSignature(<span class='keyword'>const</span> QString&amp; signature,</td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> <span class='keyword'>int</span> numberOfResults, SketchType type)</td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> QByteArray bytes = QByteArray::fromBase64(signature.toLatin1());</td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> DatabaseBlob blobReader;</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> Haar::SignatureData sig;</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> blobReader.read(bytes, &amp;sig);</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='comment'>// Get all matching images with their score and save their similarity to the signature, i.e. id -2</span></td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> QMultiMap&lt;<span class='keyword'>double</span>, qlonglong&gt; matches = bestMatches(&amp;sig, numberOfResults, targetAlbums, type);</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; result;</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> <span class='keyword'>for</span> (QMultiMap&lt;<span class='keyword'>double</span>, qlonglong&gt;::const_iterator it = matches.constBegin() ; it != matches.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='comment'>// Add the image id and the normalised score (make sure that it is positive and between 0 and 1.</span></td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> result.insert(it.value(), ( 0.0 - ( it.key()/100) ));</td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line">QMultiMap&lt;<span class='keyword'>double</span>, qlonglong&gt; HaarIface::bestMatches(Haar::SignatureData* <span class='keyword'>const</span> querySig,</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> <span class='keyword'>int</span> numberOfResults, <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums, SketchType type)</td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; scores = searchDatabase(querySig, type, targetAlbums);</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> <span class='comment'>// Find out the best matches, those with the lowest score</span></td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> <span class='comment'>// We make use of the feature that QMap keys are sorted in ascending order</span></td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> <span class='comment'>// Of course, images can have the same score, so we need a multi map</span></td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> QMultiMap&lt;<span class='keyword'>double</span>, qlonglong&gt; bestMatches;</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> <span class='keyword'>bool</span> initialFill = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>double</span> score, worstScore, bestScore;</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> qlonglong id;</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;qlonglong, <span class='keyword'>double</span>&gt;::const_iterator it = scores.constBegin() ; it != scores.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> score = it.value();</td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> id = it.key();</td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> <span class='keyword'>if</span> (!initialFill)</td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> <span class='comment'>// as long as the maximum number of results is not reached, just fill up the map</span></td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> bestMatches.insert(score, id);</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> initialFill = (bestMatches.size() &gt;= numberOfResults);</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> <span class='comment'>// find the last entry, the one with the highest (=worst) score</span></td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> QMap&lt;<span class='keyword'>double</span>, qlonglong&gt;::iterator last = bestMatches.end();</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> --last;</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> worstScore = last.key();</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='comment'>// if the new entry has a higher score, put it in the list and remove that last one</span></td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='keyword'>if</span> (score &lt; worstScore)</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> bestMatches.erase(last);</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> bestMatches.insert(score, id);</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (score == worstScore)</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> bestScore = bestMatches.begin().key();</td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='comment'>// if the score is identical for all entries, increase the maximum result number</span></td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>if</span> (score == bestScore)</td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> bestMatches.insert(score, id);</td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> <span class='comment'>for (QMap&lt;double, qlonglong&gt;::iterator it = bestMatches.begin(); it != bestMatches.end(); ++it)</span></td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> <span class='comment'>qCDebug(DIGIKAM_DATABASE_LOG) &lt;&lt; it.key() &lt;&lt; it.value();</span></td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> <span class='keyword'>return</span> bestMatches;</td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line">QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt; HaarIface::bestMatchesWithThreshold(qlonglong imageid,</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> Haar::SignatureData* <span class='keyword'>const</span> querySig,</td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> SketchType type)</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> <span class='keyword'>int</span> albumId = CoreDbAccess().db()-&gt;getItemAlbum(imageid);</td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; scores = searchDatabase(querySig, type, targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> searchResultRestriction, imageid, albumId);</td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> <span class='keyword'>double</span> lowest, highest;</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> getBestAndWorstPossibleScore(querySig, type, &amp;lowest, &amp;highest);</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='comment'>// The range between the highest (worst) and lowest (best) score</span></td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> <span class='comment'>// example: 0.2 and 0.5 -&gt; 0.3</span></td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> <span class='keyword'>double</span> scoreRange = highest - lowest;</td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> <span class='comment'>// The lower the requiredPercentage is, the higher will the result be.</span></td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> <span class='comment'>// example: 0.7 -&gt; 0.3</span></td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> <span class='keyword'>double</span> percentageRange = 1.0 - requiredPercentage;</td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> <span class='comment'>// example: 0.2 + (0.3 * 0.3) = 0.2 + 0.09 = 0.29</span></td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='keyword'>double</span> requiredScore = lowest + scoreRange * percentageRange;</td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='comment'>// Set the supremum which solves the problem that if</span></td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='comment'>// required == maximum, no results will be returned.</span></td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='comment'>// Eg, id required == maximum == 50.0, only images with exactly this</span></td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> <span class='comment'>// similarity are returned. But users expect also to see images</span></td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> <span class='comment'>// with similarity 50,x.</span></td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> <span class='keyword'>double</span> supremum = (floor(maximumPercentage*100 + 1.0))/100;</td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; bestMatches;</td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> <span class='keyword'>double</span> score, percentage, avgPercentage = 0.0;</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt; result;</td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> qlonglong id;</td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;qlonglong, <span class='keyword'>double</span>&gt;::const_iterator it = scores.constBegin() ; it != scores.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> score = it.value();</td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> id = it.key();</td></tr>
<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> <span class='comment'>// If the score of the picture is at most the required (maximum) score and</span></td></tr>
<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line"> <span class='keyword'>if</span> (score &lt;= requiredScore)</td></tr>
<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"> percentage = 1.0 - (score - lowest) / scoreRange;</td></tr>
<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> <span class='comment'>// If the found image is the original one (check by id) or the percentage is below the maximum.</span></td></tr>
<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"> <span class='keyword'>if</span> ((id == imageid) || (percentage &lt; supremum))</td></tr>
<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> bestMatches.insert(id, percentage);</td></tr>
<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='comment'>// If the current image is not the original, use the images similarity for the average percentage</span></td></tr>
<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> <span class='comment'>// Also, save the similarity of the found image to the original image.</span></td></tr>
<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> <span class='keyword'>if</span> (id != imageid)</td></tr>
<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> <span class='comment'>// Store the similarity if the reference image has a valid image id</span></td></tr>
<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> <span class='keyword'>if</span> (imageid &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"> SimilarityDbAccess().db()-&gt;setImageSimilarity(id, imageid, percentage);</td></tr>
<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> avgPercentage += percentage;</td></tr>
<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line"> <span class='comment'>// Debug output</span></td></tr>
<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> <span class='keyword'>if</span> (bestMatches.count() &gt; 1)</td></tr>
<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='comment'>// The average percentage is the sum of all percentages</span></td></tr>
<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='comment'>// (without the original picture) divided by the count of pictures -1.</span></td></tr>
<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='comment'>// Subtracting 1 is necessary since the original picture is not used for the calculation.</span></td></tr>
<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> avgPercentage = avgPercentage / (bestMatches.count() - 1);</td></tr>
<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp", 667<br>, __PRETTY_FUNCTION__, DIGIKAM_DATABASE_LOG().categoryName())<br>.debug()</span></span> &lt;&lt; <span class='string_literal'>"Duplicates with id and score:"</span>;</td></tr>
<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;qlonglong, <span class='keyword'>double</span>&gt;::const_iterator it = bestMatches.constBegin() ; it != bestMatches.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASE_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp", 671<br>, __PRETTY_FUNCTION__, DIGIKAM_DATABASE_LOG().categoryName())<br>.debug()</span></span> &lt;&lt; it.key() &lt;&lt; QString::number(it.value() * 100) + QLatin1Char('%');</td></tr>
<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> result.first = avgPercentage;</td></tr>
<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> result.second = bestMatches;</td></tr>
<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"><span class='keyword'>bool</span> HaarIface::fulfillsRestrictions(qlonglong imageId, <span class='keyword'>int</span> albumId,</td></tr>
<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> qlonglong originalImageId,</td></tr>
<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> <span class='keyword'>int</span> originalAlbumId, <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> DuplicatesSearchRestrictions searchResultRestriction)</td></tr>
<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> <span class='keyword'>if</span> (imageId == originalImageId)</td></tr>
<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (targetAlbums.isEmpty() || targetAlbums.contains(albumId))</td></tr>
<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> <span class='keyword'>return</span> (searchResultRestriction == None) ||</td></tr>
<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> (searchResultRestriction == SameAlbum &amp;&amp; originalAlbumId == albumId) ||</td></tr>
<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> (searchResultRestriction == DifferentAlbum &amp;&amp; originalAlbumId != albumId);</td></tr>
<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"><span class='comment'>/// This method is the core functionality: It assigns a score to every image in the db</span></td></tr>
<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line">QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; HaarIface::searchDatabase(Haar::SignatureData* <span class='keyword'>const</span> querySig,</td></tr>
<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> SketchType type, <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; targetAlbums,</td></tr>
<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> DuplicatesSearchRestrictions searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> qlonglong originalImageId, <span class='keyword'>int</span> originalAlbumId)</td></tr>
<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> d-&gt;createWeightBin();</td></tr>
<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> <span class='comment'>// The table of constant weight factors applied to each channel and bin</span></td></tr>
<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> Haar::Weights weights((Haar::Weights::SketchType)type);</td></tr>
<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> <span class='comment'>// layout the query signature for fast lookup</span></td></tr>
<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> Haar::SignatureMap queryMapY, queryMapI, queryMapQ;</td></tr>
<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> queryMapY.fill(querySig-&gt;sig[0]);</td></tr>
<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> queryMapI.fill(querySig-&gt;sig[1]);</td></tr>
<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> queryMapQ.fill(querySig-&gt;sig[2]);</td></tr>
<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> Haar::SignatureMap* queryMaps[3] = { &amp;queryMapY, &amp;queryMapI, &amp;queryMapQ };</td></tr>
<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="719"><td class="num" id="LN719">719</td><td class="line"> <span class='comment'>// Map imageid -&gt; score. Lowest score is best.</span></td></tr>
<tr class="codeline" data-linenumber="720"><td class="num" id="LN720">720</td><td class="line"> <span class='comment'>// any newly inserted value will be initialized with a score of 0, as required</span></td></tr>
<tr class="codeline" data-linenumber="721"><td class="num" id="LN721">721</td><td class="line"> QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; scores;</td></tr>
<tr class="codeline" data-linenumber="722"><td class="num" id="LN722">722</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="723"><td class="num" id="LN723">723</td><td class="line"> <span class='comment'>// Variables for data read from DB</span></td></tr>
<tr class="codeline" data-linenumber="724"><td class="num" id="LN724">724</td><td class="line"> DatabaseBlob blob;</td></tr>
<tr class="codeline" data-linenumber="725"><td class="num" id="LN725">725</td><td class="line"> qlonglong imageid;</td></tr>
<tr class="codeline" data-linenumber="726"><td class="num" id="LN726">726</td><td class="line"> <span class='keyword'>int</span> albumid;</td></tr>
<tr class="codeline" data-linenumber="727"><td class="num" id="LN727">727</td><td class="line"> Haar::SignatureData targetSig;</td></tr>
<tr class="codeline" data-linenumber="728"><td class="num" id="LN728">728</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="729"><td class="num" id="LN729">729</td><td class="line"> <span class='comment'>// reference for easier access</span></td></tr>
<tr class="codeline" data-linenumber="730"><td class="num" id="LN730">730</td><td class="line"> SignatureCache&amp; signatureCache = *d-&gt;signatureCache;</td></tr>
<tr class="codeline" data-linenumber="731"><td class="num" id="LN731">731</td><td class="line"> AlbumCache&amp; albumCache = *d-&gt;albumCache;</td></tr>
<tr class="codeline" data-linenumber="732"><td class="num" id="LN732">732</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="733"><td class="num" id="LN733">733</td><td class="line"> <span class='keyword'>bool</span> filterByAlbumRoots = !d-&gt;albumRootsToSearch.isEmpty();</td></tr>
<tr class="codeline" data-linenumber="734"><td class="num" id="LN734">734</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="735"><td class="num" id="LN735">735</td><td class="line"> <span class='comment'>// if no cache is used or the cache signature map is empty, query the database</span></td></tr>
<tr class="codeline" data-linenumber="736"><td class="num" id="LN736">736</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;useSignatureCache || (signatureCache.isEmpty() &amp;&amp; d-&gt;useSignatureCache))</td></tr>
<tr class="codeline" data-linenumber="737"><td class="num" id="LN737">737</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="738"><td class="num" id="LN738">738</td><td class="line"> DbEngineSqlQuery query = SimilarityDbAccess().backend()-&gt;prepareQuery(d-&gt;signatureQuery);</td></tr>
<tr class="codeline" data-linenumber="739"><td class="num" id="LN739">739</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="740"><td class="num" id="LN740">740</td><td class="line"> <span class='keyword'>if</span> (!SimilarityDbAccess().backend()-&gt;exec(query))</td></tr>
<tr class="codeline" data-linenumber="741"><td class="num" id="LN741">741</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="742"><td class="num" id="LN742">742</td><td class="line"> <span class='keyword'>return</span> scores;</td></tr>
<tr class="codeline" data-linenumber="743"><td class="num" id="LN743">743</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="744"><td class="num" id="LN744">744</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="745"><td class="num" id="LN745">745</td><td class="line"> <span class='keyword'>const</span> QHash&lt;qlonglong, QPair&lt;<span class='keyword'>int</span>, <span class='keyword'>int</span>&gt; &gt;&amp; itemAlbumHash = CoreDbAccess().db()-&gt;getAllItemsWithAlbum();</td></tr>
<tr class="codeline" data-linenumber="746"><td class="num" id="LN746">746</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="747"><td class="num" id="LN747">747</td><td class="line"> <span class='comment'>// We don't use SimilarityDb's convenience calls, as the result set is large</span></td></tr>
<tr class="codeline" data-linenumber="748"><td class="num" id="LN748">748</td><td class="line"> <span class='comment'>// and we try to avoid copying in a temporary QList&lt;QVariant&gt;</span></td></tr>
<tr class="codeline" data-linenumber="749"><td class="num" id="LN749">749</td><td class="line"> <span class='keyword'>while</span> (query.next())</td></tr>
<tr class="codeline" data-linenumber="750"><td class="num" id="LN750">750</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="751"><td class="num" id="LN751">751</td><td class="line"> imageid = query.value(0).toLongLong();</td></tr>
<tr class="codeline" data-linenumber="752"><td class="num" id="LN752">752</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="753"><td class="num" id="LN753">753</td><td class="line"> <span class='keyword'>if</span> (itemAlbumHash.contains(imageid))</td></tr>
<tr class="codeline" data-linenumber="754"><td class="num" id="LN754">754</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="755"><td class="num" id="LN755">755</td><td class="line"> QPair&lt;<span class='keyword'>int</span>, <span class='keyword'>int</span>&gt; albumPair = itemAlbumHash.value(imageid);</td></tr>
<tr class="codeline" data-linenumber="756"><td class="num" id="LN756">756</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="757"><td class="num" id="LN757">757</td><td class="line"> <span class='keyword'>if</span> (filterByAlbumRoots)</td></tr>
<tr class="codeline" data-linenumber="758"><td class="num" id="LN758">758</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="759"><td class="num" id="LN759">759</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;albumRootsToSearch.contains(albumPair.first))</td></tr>
<tr class="codeline" data-linenumber="760"><td class="num" id="LN760">760</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="761"><td class="num" id="LN761">761</td><td class="line"> <span class='keyword'>continue</span>;</td></tr>
<tr class="codeline" data-linenumber="762"><td class="num" id="LN762">762</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="763"><td class="num" id="LN763">763</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="764"><td class="num" id="LN764">764</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="765"><td class="num" id="LN765">765</td><td class="line"> blob.read(query.value(1).toByteArray(), &amp;targetSig);</td></tr>
<tr class="codeline" data-linenumber="766"><td class="num" id="LN766">766</td><td class="line"> albumid = albumPair.second;</td></tr>
<tr class="codeline" data-linenumber="767"><td class="num" id="LN767">767</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="768"><td class="num" id="LN768">768</td><td class="line"> <span class='keyword'>if</span> (d-&gt;useSignatureCache)</td></tr>
<tr class="codeline" data-linenumber="769"><td class="num" id="LN769">769</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="770"><td class="num" id="LN770">770</td><td class="line"> signatureCache[imageid] = targetSig;</td></tr>
<tr class="codeline" data-linenumber="771"><td class="num" id="LN771">771</td><td class="line"> albumCache[imageid] = albumid;</td></tr>
<tr class="codeline" data-linenumber="772"><td class="num" id="LN772">772</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="773"><td class="num" id="LN773">773</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="774"><td class="num" id="LN774">774</td><td class="line"> <span class='comment'>// If the image is the original one or</span></td></tr>
<tr class="codeline" data-linenumber="775"><td class="num" id="LN775">775</td><td class="line"> <span class='comment'>// No restrictions apply or</span></td></tr>
<tr class="codeline" data-linenumber="776"><td class="num" id="LN776">776</td><td class="line"> <span class='comment'>// SameAlbum restriction applies and the albums are equal or</span></td></tr>
<tr class="codeline" data-linenumber="777"><td class="num" id="LN777">777</td><td class="line"> <span class='comment'>// DifferentAlbum restriction applies and the albums differ</span></td></tr>
<tr class="codeline" data-linenumber="778"><td class="num" id="LN778">778</td><td class="line"> <span class='comment'>// then calculate the score.</span></td></tr>
<tr class="codeline" data-linenumber="779"><td class="num" id="LN779">779</td><td class="line"> <span class='comment'>// Also, restrict to target album</span></td></tr>
<tr class="codeline" data-linenumber="780"><td class="num" id="LN780">780</td><td class="line"> <span class='keyword'>if</span> (fulfillsRestrictions(imageid, albumid, originalImageId,</td></tr>
<tr class="codeline" data-linenumber="781"><td class="num" id="LN781">781</td><td class="line"> originalAlbumId, targetAlbums, searchResultRestriction))</td></tr>
<tr class="codeline" data-linenumber="782"><td class="num" id="LN782">782</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="783"><td class="num" id="LN783">783</td><td class="line"> <span class='keyword'>double</span>&amp; score = scores[imageid];</td></tr>
<tr class="codeline" data-linenumber="784"><td class="num" id="LN784">784</td><td class="line"> Haar::SignatureData&amp; qSig = *querySig;</td></tr>
<tr class="codeline" data-linenumber="785"><td class="num" id="LN785">785</td><td class="line"> Haar::SignatureData&amp; tSig = targetSig;</td></tr>
<tr class="codeline" data-linenumber="786"><td class="num" id="LN786">786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="787"><td class="num" id="LN787">787</td><td class="line"> score = calculateScore(qSig, tSig, weights, queryMaps);</td></tr>
<tr class="codeline" data-linenumber="788"><td class="num" id="LN788">788</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="789"><td class="num" id="LN789">789</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="790"><td class="num" id="LN790">790</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="791"><td class="num" id="LN791">791</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="792"><td class="num" id="LN792">792</td><td class="line"> <span class='comment'>// read cached signature map if possible</span></td></tr>
<tr class="codeline" data-linenumber="793"><td class="num" id="LN793">793</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="794"><td class="num" id="LN794">794</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="795"><td class="num" id="LN795">795</td><td class="line"> <span class='macro'>foreach (<span class='keyword'>const</span> qlonglong&amp; imageid, signatureCache.keys())<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(signatureCache<br>.keys()); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const qlonglong<br>&amp; imageid = *_container_.i; _container_.control; _container_<br>.control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="796"><td class="num" id="LN796">796</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="797"><td class="num" id="LN797">797</td><td class="line"> albumid = albumCache[imageid];</td></tr>
<tr class="codeline" data-linenumber="798"><td class="num" id="LN798">798</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="799"><td class="num" id="LN799">799</td><td class="line"> <span class='comment'>// If the image is the original one or</span></td></tr>
<tr class="codeline" data-linenumber="800"><td class="num" id="LN800">800</td><td class="line"> <span class='comment'>// No restrictions apply or</span></td></tr>
<tr class="codeline" data-linenumber="801"><td class="num" id="LN801">801</td><td class="line"> <span class='comment'>// SameAlbum restriction applies and the albums are equal or</span></td></tr>
<tr class="codeline" data-linenumber="802"><td class="num" id="LN802">802</td><td class="line"> <span class='comment'>// DifferentAlbum restriction applies and the albums differ</span></td></tr>
<tr class="codeline" data-linenumber="803"><td class="num" id="LN803">803</td><td class="line"> <span class='comment'>// then calculate the score.</span></td></tr>
<tr class="codeline" data-linenumber="804"><td class="num" id="LN804">804</td><td class="line"> <span class='keyword'>if</span> (fulfillsRestrictions(imageid, albumid, originalImageId,</td></tr>
<tr class="codeline" data-linenumber="805"><td class="num" id="LN805">805</td><td class="line"> originalAlbumId, targetAlbums, searchResultRestriction))</td></tr>
<tr class="codeline" data-linenumber="806"><td class="num" id="LN806">806</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="807"><td class="num" id="LN807">807</td><td class="line"> <span class='keyword'>double</span>&amp; score = scores[imageid];</td></tr>
<tr class="codeline" data-linenumber="808"><td class="num" id="LN808">808</td><td class="line"> Haar::SignatureData&amp; qSig = *querySig;</td></tr>
<tr class="codeline" data-linenumber="809"><td class="num" id="LN809">809</td><td class="line"> Haar::SignatureData&amp; tSig = signatureCache[imageid];</td></tr>
<tr class="codeline" data-linenumber="810"><td class="num" id="LN810">810</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="811"><td class="num" id="LN811">811</td><td class="line"> score = calculateScore(qSig, tSig, weights, queryMaps);</td></tr>
<tr class="codeline" data-linenumber="812"><td class="num" id="LN812">812</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="813"><td class="num" id="LN813">813</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="814"><td class="num" id="LN814">814</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="815"><td class="num" id="LN815">815</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="816"><td class="num" id="LN816">816</td><td class="line"> <span class='keyword'>return</span> scores;</td></tr>
<tr class="codeline" data-linenumber="817"><td class="num" id="LN817">817</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="818"><td class="num" id="LN818">818</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="819"><td class="num" id="LN819">819</td><td class="line">QImage HaarIface::loadQImage(<span class='keyword'>const</span> QString&amp; filename)</td></tr>
<tr class="codeline" data-linenumber="820"><td class="num" id="LN820">820</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="821"><td class="num" id="LN821">821</td><td class="line"> <span class='comment'>// NOTE: Can be optimized using DImg.</span></td></tr>
<tr class="codeline" data-linenumber="822"><td class="num" id="LN822">822</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="823"><td class="num" id="LN823">823</td><td class="line"> QImage image;</td></tr>
<tr class="codeline" data-linenumber="824"><td class="num" id="LN824">824</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="825"><td class="num" id="LN825">825</td><td class="line"> <span class='keyword'>if</span> (JPEGUtils::isJpegImage(filename))</td></tr>
<tr class="codeline" data-linenumber="826"><td class="num" id="LN826">826</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="827"><td class="num" id="LN827">827</td><td class="line"> <span class='comment'>// use fast jpeg loading</span></td></tr>
<tr class="codeline" data-linenumber="828"><td class="num" id="LN828">828</td><td class="line"> <span class='keyword'>if</span> (!JPEGUtils::loadJPEGScaled(image, filename, Haar::NumberOfPixels))</td></tr>
<tr class="codeline" data-linenumber="829"><td class="num" id="LN829">829</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="830"><td class="num" id="LN830">830</td><td class="line"> <span class='comment'>// try QT now.</span></td></tr>
<tr class="codeline" data-linenumber="831"><td class="num" id="LN831">831</td><td class="line"> <span class='keyword'>if</span> (!image.load(filename))</td></tr>
<tr class="codeline" data-linenumber="832"><td class="num" id="LN832">832</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="833"><td class="num" id="LN833">833</td><td class="line"> <span class='keyword'>return</span> QImage();</td></tr>
<tr class="codeline" data-linenumber="834"><td class="num" id="LN834">834</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="835"><td class="num" id="LN835">835</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="836"><td class="num" id="LN836">836</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="837"><td class="num" id="LN837">837</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="838"><td class="num" id="LN838">838</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="839"><td class="num" id="LN839">839</td><td class="line"> <span class='comment'>// use default QT image loading</span></td></tr>
<tr class="codeline" data-linenumber="840"><td class="num" id="LN840">840</td><td class="line"> <span class='keyword'>if</span> (!image.load(filename))</td></tr>
<tr class="codeline" data-linenumber="841"><td class="num" id="LN841">841</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="842"><td class="num" id="LN842">842</td><td class="line"> <span class='keyword'>return</span> QImage();</td></tr>
<tr class="codeline" data-linenumber="843"><td class="num" id="LN843">843</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="844"><td class="num" id="LN844">844</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="845"><td class="num" id="LN845">845</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="846"><td class="num" id="LN846">846</td><td class="line"> <span class='keyword'>return</span> image;</td></tr>
<tr class="codeline" data-linenumber="847"><td class="num" id="LN847">847</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="848"><td class="num" id="LN848">848</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="849"><td class="num" id="LN849">849</td><td class="line"><span class='keyword'>bool</span> HaarIface::retrieveSignatureFromDB(qlonglong imageid, Haar::SignatureData* <span class='keyword'>const</span> sig)</td></tr>
<tr class="codeline" data-linenumber="850"><td class="num" id="LN850">850</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="851"><td class="num" id="LN851">851</td><td class="line"> QList&lt;QVariant&gt; values;</td></tr>
<tr class="codeline" data-linenumber="852"><td class="num" id="LN852">852</td><td class="line"> SimilarityDbAccess().backend()-&gt;execSql(QString::fromUtf8(<span class='string_literal'>"SELECT matrix FROM ImageHaarMatrix WHERE imageid=?"</span>),</td></tr>
<tr class="codeline" data-linenumber="853"><td class="num" id="LN853">853</td><td class="line"> imageid, &amp;values);</td></tr>
<tr class="codeline" data-linenumber="854"><td class="num" id="LN854">854</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="855"><td class="num" id="LN855">855</td><td class="line"> <span class='keyword'>if</span> (values.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="856"><td class="num" id="LN856">856</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="857"><td class="num" id="LN857">857</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="858"><td class="num" id="LN858">858</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="859"><td class="num" id="LN859">859</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="860"><td class="num" id="LN860">860</td><td class="line"> DatabaseBlob blob;</td></tr>
<tr class="codeline" data-linenumber="861"><td class="num" id="LN861">861</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="862"><td class="num" id="LN862">862</td><td class="line"> blob.read(values.first().toByteArray(), sig);</td></tr>
<tr class="codeline" data-linenumber="863"><td class="num" id="LN863">863</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="864"><td class="num" id="LN864">864</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="865"><td class="num" id="LN865">865</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="866"><td class="num" id="LN866">866</td><td class="line"><span class='keyword'>void</span> HaarIface::getBestAndWorstPossibleScore(Haar::SignatureData* <span class='keyword'>const</span> sig,</td></tr>
<tr class="codeline" data-linenumber="867"><td class="num" id="LN867">867</td><td class="line"> SketchType type,</td></tr>
<tr class="codeline" data-linenumber="868"><td class="num" id="LN868">868</td><td class="line"> <span class='keyword'>double</span>* <span class='keyword'>const</span> lowestAndBestScore,</td></tr>
<tr class="codeline" data-linenumber="869"><td class="num" id="LN869">869</td><td class="line"> <span class='keyword'>double</span>* <span class='keyword'>const</span> highestAndWorstScore)</td></tr>
<tr class="codeline" data-linenumber="870"><td class="num" id="LN870">870</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="871"><td class="num" id="LN871">871</td><td class="line"> Haar::Weights weights((Haar::Weights::SketchType)type);</td></tr>
<tr class="codeline" data-linenumber="872"><td class="num" id="LN872">872</td><td class="line"> <span class='keyword'>double</span> score = 0;</td></tr>
<tr class="codeline" data-linenumber="873"><td class="num" id="LN873">873</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="874"><td class="num" id="LN874">874</td><td class="line"> <span class='comment'>// In the first step, the score is initialized with the weighted color channel averages.</span></td></tr>
<tr class="codeline" data-linenumber="875"><td class="num" id="LN875">875</td><td class="line"> <span class='comment'>// We don't know the target channel average here, we only now its not negative =&gt; assume 0</span></td></tr>
<tr class="codeline" data-linenumber="876"><td class="num" id="LN876">876</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> channel = 0 ; channel &lt; 3 ; ++channel)</td></tr>
<tr class="codeline" data-linenumber="877"><td class="num" id="LN877">877</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="878"><td class="num" id="LN878">878</td><td class="line"> score += weights.weightForAverage(channel) * fabs(sig-&gt;avg[channel] <span class='comment'>/*- targetSig.avg[channel]*/</span>);</td></tr>
<tr class="codeline" data-linenumber="879"><td class="num" id="LN879">879</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="880"><td class="num" id="LN880">880</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="881"><td class="num" id="LN881">881</td><td class="line"> *highestAndWorstScore = score;</td></tr>
<tr class="codeline" data-linenumber="882"><td class="num" id="LN882">882</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="883"><td class="num" id="LN883">883</td><td class="line"> <span class='comment'>// Next consideration: The lowest possible score is reached if the signature is identical.</span></td></tr>
<tr class="codeline" data-linenumber="884"><td class="num" id="LN884">884</td><td class="line"> <span class='comment'>// The first step (see above) will result in 0 - skip it.</span></td></tr>
<tr class="codeline" data-linenumber="885"><td class="num" id="LN885">885</td><td class="line"> <span class='comment'>// In the second step, for every coefficient in the sig that have query and target in common,</span></td></tr>
<tr class="codeline" data-linenumber="886"><td class="num" id="LN886">886</td><td class="line"> <span class='comment'>// so in our case all 3*40, subtract the specifically assigned weighting.</span></td></tr>
<tr class="codeline" data-linenumber="887"><td class="num" id="LN887">887</td><td class="line"> score = 0;</td></tr>
<tr class="codeline" data-linenumber="888"><td class="num" id="LN888">888</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="889"><td class="num" id="LN889">889</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> channel = 0 ; channel &lt; 3 ; ++channel)</td></tr>
<tr class="codeline" data-linenumber="890"><td class="num" id="LN890">890</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="891"><td class="num" id="LN891">891</td><td class="line"> Haar::Idx* coefs = sig-&gt;sig[channel];</td></tr>
<tr class="codeline" data-linenumber="892"><td class="num" id="LN892">892</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="893"><td class="num" id="LN893">893</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> coef = 0 ; coef &lt; Haar::NumberOfCoefficients ; ++coef)</td></tr>
<tr class="codeline" data-linenumber="894"><td class="num" id="LN894">894</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="895"><td class="num" id="LN895">895</td><td class="line"> score -= weights.weight(d-&gt;bin-&gt;binAbs(coefs[coef]), channel);</td></tr>
<tr class="codeline" data-linenumber="896"><td class="num" id="LN896">896</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="897"><td class="num" id="LN897">897</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="898"><td class="num" id="LN898">898</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="899"><td class="num" id="LN899">899</td><td class="line"> *lowestAndBestScore = score;</td></tr>
<tr class="codeline" data-linenumber="900"><td class="num" id="LN900">900</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="901"><td class="num" id="LN901">901</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="902"><td class="num" id="LN902">902</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="903"><td class="num" id="LN903">903</td><td class="line">QMap&lt;QString, QString&gt; HaarIface::writeSAlbumQueries(<span class='keyword'>const</span> QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt;&amp; searchResults)</td></tr>
<tr class="codeline" data-linenumber="904"><td class="num" id="LN904">904</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="905"><td class="num" id="LN905">905</td><td class="line"> <span class='comment'>// Build search XML from the results. Store list of ids of similar images.</span></td></tr>
<tr class="codeline" data-linenumber="906"><td class="num" id="LN906">906</td><td class="line"> QMap&lt;QString, QString&gt; queries;</td></tr>
<tr class="codeline" data-linenumber="907"><td class="num" id="LN907">907</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="908"><td class="num" id="LN908">908</td><td class="line"> <span class='comment'>// Iterate over the similarity</span></td></tr>
<tr class="codeline" data-linenumber="909"><td class="num" id="LN909">909</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt;::const_iterator similarity_it = searchResults.constBegin() ;</td></tr>
<tr class="codeline" data-linenumber="910"><td class="num" id="LN910">910</td><td class="line"> similarity_it != searchResults.constEnd() ; ++similarity_it)</td></tr>
<tr class="codeline" data-linenumber="911"><td class="num" id="LN911">911</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="912"><td class="num" id="LN912">912</td><td class="line"> <span class='keyword'>double</span> similarity = similarity_it.key() * 100;</td></tr>
<tr class="codeline" data-linenumber="913"><td class="num" id="LN913">913</td><td class="line"> QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; sameSimilarityMap = similarity_it.value();</td></tr>
<tr class="codeline" data-linenumber="914"><td class="num" id="LN914">914</td><td class="line"> <span class='comment'>// Iterate ofer</span></td></tr>
<tr class="codeline" data-linenumber="915"><td class="num" id="LN915">915</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt;::const_iterator it = sameSimilarityMap.constBegin() ;</td></tr>
<tr class="codeline" data-linenumber="916"><td class="num" id="LN916">916</td><td class="line"> it != sameSimilarityMap.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="917"><td class="num" id="LN917">917</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="918"><td class="num" id="LN918">918</td><td class="line"> SearchXmlWriter writer;</td></tr>
<tr class="codeline" data-linenumber="919"><td class="num" id="LN919">919</td><td class="line"> writer.writeGroup();</td></tr>
<tr class="codeline" data-linenumber="920"><td class="num" id="LN920">920</td><td class="line"> writer.writeField(QLatin1String(<span class='string_literal'>"imageid"</span>), SearchXml::OneOf);</td></tr>
<tr class="codeline" data-linenumber="921"><td class="num" id="LN921">921</td><td class="line"> writer.writeValue(it.value());</td></tr>
<tr class="codeline" data-linenumber="922"><td class="num" id="LN922">922</td><td class="line"> writer.finishField();</td></tr>
<tr class="codeline" data-linenumber="923"><td class="num" id="LN923">923</td><td class="line"> <span class='comment'>// Add the average similarity as field</span></td></tr>
<tr class="codeline" data-linenumber="924"><td class="num" id="LN924">924</td><td class="line"> writer.writeField(QLatin1String(<span class='string_literal'>"noeffect_avgsim"</span>), SearchXml::Equal);</td></tr>
<tr class="codeline" data-linenumber="925"><td class="num" id="LN925">925</td><td class="line"> writer.writeValue(similarity);</td></tr>
<tr class="codeline" data-linenumber="926"><td class="num" id="LN926">926</td><td class="line"> writer.finishField();</td></tr>
<tr class="codeline" data-linenumber="927"><td class="num" id="LN927">927</td><td class="line"> writer.finishGroup();</td></tr>
<tr class="codeline" data-linenumber="928"><td class="num" id="LN928">928</td><td class="line"> writer.finish();</td></tr>
<tr class="codeline" data-linenumber="929"><td class="num" id="LN929">929</td><td class="line"> <span class='comment'>// Use the id of the first duplicate as name of the search</span></td></tr>
<tr class="codeline" data-linenumber="930"><td class="num" id="LN930">930</td><td class="line"> queries.insert(QString::number(it.key()), writer.xml());</td></tr>
<tr class="codeline" data-linenumber="931"><td class="num" id="LN931">931</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="932"><td class="num" id="LN932">932</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="933"><td class="num" id="LN933">933</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="934"><td class="num" id="LN934">934</td><td class="line"> <span class='keyword'>return</span> queries;</td></tr>
<tr class="codeline" data-linenumber="935"><td class="num" id="LN935">935</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="936"><td class="num" id="LN936">936</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="937"><td class="num" id="LN937">937</td><td class="line"><span class='keyword'>void</span> HaarIface::rebuildDuplicatesAlbums(<span class='keyword'>const</span> QList&lt;qlonglong&gt;&amp; imageIds,</td></tr>
<tr class="codeline" data-linenumber="938"><td class="num" id="LN938">938</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="939"><td class="num" id="LN939">939</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="940"><td class="num" id="LN940">940</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="941"><td class="num" id="LN941">941</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="942"><td class="num" id="LN942">942</td><td class="line"> HaarProgressObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="943"><td class="num" id="LN943">943</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="944"><td class="num" id="LN944">944</td><td class="line"> QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt; results = findDuplicates(imageIds.toSet(),</td></tr>
<tr class="codeline" data-linenumber="945"><td class="num" id="LN945">945</td><td class="line"> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="946"><td class="num" id="LN946">946</td><td class="line"> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="947"><td class="num" id="LN947">947</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="948"><td class="num" id="LN948">948</td><td class="line"> observer);</td></tr>
<tr class="codeline" data-linenumber="949"><td class="num" id="LN949">949</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="950"><td class="num" id="LN950">950</td><td class="line"> QMap&lt;QString, QString&gt; queries = writeSAlbumQueries(results);</td></tr>
<tr class="codeline" data-linenumber="951"><td class="num" id="LN951">951</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="952"><td class="num" id="LN952">952</td><td class="line"> <span class='comment'>// Write the new search albums to the database</span></td></tr>
<tr class="codeline" data-linenumber="953"><td class="num" id="LN953">953</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="954"><td class="num" id="LN954">954</td><td class="line"> CoreDbAccess access;</td></tr>
<tr class="codeline" data-linenumber="955"><td class="num" id="LN955">955</td><td class="line"> CoreDbTransaction transaction(&amp;access);</td></tr>
<tr class="codeline" data-linenumber="956"><td class="num" id="LN956">956</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="957"><td class="num" id="LN957">957</td><td class="line"> <span class='comment'>// Update existing searches by deleting and adding them.</span></td></tr>
<tr class="codeline" data-linenumber="958"><td class="num" id="LN958">958</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;QString, QString&gt;::const_iterator it = queries.constBegin() ; it != queries.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="959"><td class="num" id="LN959">959</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="960"><td class="num" id="LN960">960</td><td class="line"> access.db()-&gt;deleteSearch(it.key().toInt());</td></tr>
<tr class="codeline" data-linenumber="961"><td class="num" id="LN961">961</td><td class="line"> access.db()-&gt;addSearch(DatabaseSearch::DuplicatesSearch, it.key(), it.value());</td></tr>
<tr class="codeline" data-linenumber="962"><td class="num" id="LN962">962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="963"><td class="num" id="LN963">963</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="964"><td class="num" id="LN964">964</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="965"><td class="num" id="LN965">965</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="966"><td class="num" id="LN966">966</td><td class="line"><span class='keyword'>void</span> HaarIface::rebuildDuplicatesAlbums(<span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; albums2Scan,</td></tr>
<tr class="codeline" data-linenumber="967"><td class="num" id="LN967">967</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; tags2Scan,</td></tr>
<tr class="codeline" data-linenumber="968"><td class="num" id="LN968">968</td><td class="line"> AlbumTagRelation relation,</td></tr>
<tr class="codeline" data-linenumber="969"><td class="num" id="LN969">969</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="970"><td class="num" id="LN970">970</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="971"><td class="num" id="LN971">971</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="972"><td class="num" id="LN972">972</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="973"><td class="num" id="LN973">973</td><td class="line"> HaarProgressObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="974"><td class="num" id="LN974">974</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="975"><td class="num" id="LN975">975</td><td class="line"> <span class='comment'>// Carry out search. This takes long.</span></td></tr>
<tr class="codeline" data-linenumber="976"><td class="num" id="LN976">976</td><td class="line"> QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt; results = <span class="mrange">findDuplicatesInAlbumsAndTags(albums2Scan,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:65ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Calling 'HaarIface::findDuplicatesInAlbumsAndTags'</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="977"><td class="num" id="LN977">977</td><td class="line"> <span class="mrange">tags2Scan,</td></tr></span>
<tr class="codeline" data-linenumber="978"><td class="num" id="LN978">978</td><td class="line"> <span class="mrange">relation,</td></tr></span>
<tr class="codeline" data-linenumber="979"><td class="num" id="LN979">979</td><td class="line"> <span class="mrange">requiredPercentage,</td></tr></span>
<tr class="codeline" data-linenumber="980"><td class="num" id="LN980">980</td><td class="line"> <span class="mrange">maximumPercentage,</td></tr></span>
<tr class="codeline" data-linenumber="981"><td class="num" id="LN981">981</td><td class="line"> <span class="mrange">searchResultRestriction,</td></tr></span>
<tr class="codeline" data-linenumber="982"><td class="num" id="LN982">982</td><td class="line"> <span class="mrange">observer)</span>;</td></tr>
<tr class="codeline" data-linenumber="983"><td class="num" id="LN983">983</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="984"><td class="num" id="LN984">984</td><td class="line"> <span class='comment'>// Build search XML from the results. Store list of ids of similar images.</span></td></tr>
<tr class="codeline" data-linenumber="985"><td class="num" id="LN985">985</td><td class="line"> QMap&lt;QString, QString&gt; queries = writeSAlbumQueries(results);</td></tr>
<tr class="codeline" data-linenumber="986"><td class="num" id="LN986">986</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="987"><td class="num" id="LN987">987</td><td class="line"> <span class='comment'>// Write search albums to database</span></td></tr>
<tr class="codeline" data-linenumber="988"><td class="num" id="LN988">988</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="989"><td class="num" id="LN989">989</td><td class="line"> CoreDbAccess access;</td></tr>
<tr class="codeline" data-linenumber="990"><td class="num" id="LN990">990</td><td class="line"> CoreDbTransaction transaction(&amp;access);</td></tr>
<tr class="codeline" data-linenumber="991"><td class="num" id="LN991">991</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="992"><td class="num" id="LN992">992</td><td class="line"> <span class='comment'>// delete all old searches</span></td></tr>
<tr class="codeline" data-linenumber="993"><td class="num" id="LN993">993</td><td class="line"> access.db()-&gt;deleteSearches(DatabaseSearch::DuplicatesSearch);</td></tr>
<tr class="codeline" data-linenumber="994"><td class="num" id="LN994">994</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="995"><td class="num" id="LN995">995</td><td class="line"> <span class='comment'>// create new groups</span></td></tr>
<tr class="codeline" data-linenumber="996"><td class="num" id="LN996">996</td><td class="line"> <span class='keyword'>for</span> (QMap&lt;QString, QString&gt;::const_iterator it = queries.constBegin() ; it != queries.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="997"><td class="num" id="LN997">997</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="998"><td class="num" id="LN998">998</td><td class="line"> access.db()-&gt;addSearch(DatabaseSearch::DuplicatesSearch, it.key(), it.value());</td></tr>
<tr class="codeline" data-linenumber="999"><td class="num" id="LN999">999</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1000"><td class="num" id="LN1000">1000</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1001"><td class="num" id="LN1001">1001</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1002"><td class="num" id="LN1002">1002</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1003"><td class="num" id="LN1003">1003</td><td class="line">QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt; HaarIface::findDuplicatesInAlbums(<span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; albums2Scan,</td></tr>
<tr class="codeline" data-linenumber="1004"><td class="num" id="LN1004">1004</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="1005"><td class="num" id="LN1005">1005</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="1006"><td class="num" id="LN1006">1006</td><td class="line"> HaarProgressObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="1007"><td class="num" id="LN1007">1007</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1008"><td class="num" id="LN1008">1008</td><td class="line"> QSet&lt;qlonglong&gt; idList;</td></tr>
<tr class="codeline" data-linenumber="1009"><td class="num" id="LN1009">1009</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1010"><td class="num" id="LN1010">1010</td><td class="line"> <span class='comment'>// Get all items DB id from all albums and all collections</span></td></tr>
<tr class="codeline" data-linenumber="1011"><td class="num" id="LN1011">1011</td><td class="line"> <span class='macro'>foreach (<span class='keyword'>int</span> albumId, albums2Scan)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(albums2Scan<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (int albumId<br> = *_container_.i; _container_.control; _container_.control =<br> 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="1012"><td class="num" id="LN1012">1012</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1013"><td class="num" id="LN1013">1013</td><td class="line"> idList.unite(CoreDbAccess().db()-&gt;getItemIDsInAlbum(albumId).toSet());</td></tr>
<tr class="codeline" data-linenumber="1014"><td class="num" id="LN1014">1014</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1015"><td class="num" id="LN1015">1015</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1016"><td class="num" id="LN1016">1016</td><td class="line"> <span class='keyword'>return</span> findDuplicates(idList, requiredPercentage, maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="1017"><td class="num" id="LN1017">1017</td><td class="line"> DuplicatesSearchRestrictions::None, observer);</td></tr>
<tr class="codeline" data-linenumber="1018"><td class="num" id="LN1018">1018</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1019"><td class="num" id="LN1019">1019</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1020"><td class="num" id="LN1020">1020</td><td class="line">QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt; HaarIface::findDuplicatesInAlbumsAndTags(<span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; albums2Scan,</td></tr>
<tr class="codeline" data-linenumber="1021"><td class="num" id="LN1021">1021</td><td class="line"> <span class='keyword'>const</span> QList&lt;<span class='keyword'>int</span>&gt;&amp; tags2Scan,</td></tr>
<tr class="codeline" data-linenumber="1022"><td class="num" id="LN1022">1022</td><td class="line"> AlbumTagRelation relation,</td></tr>
<tr class="codeline" data-linenumber="1023"><td class="num" id="LN1023">1023</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="1024"><td class="num" id="LN1024">1024</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="1025"><td class="num" id="LN1025">1025</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="1026"><td class="num" id="LN1026">1026</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="1027"><td class="num" id="LN1027">1027</td><td class="line"> HaarProgressObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="1028"><td class="num" id="LN1028">1028</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1029"><td class="num" id="LN1029">1029</td><td class="line"> QSet&lt;qlonglong&gt; imagesFromAlbums;</td></tr>
<tr class="codeline" data-linenumber="1030"><td class="num" id="LN1030">1030</td><td class="line"> QSet&lt;qlonglong&gt; imagesFromTags;</td></tr>
<tr class="codeline" data-linenumber="1031"><td class="num" id="LN1031">1031</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1032"><td class="num" id="LN1032">1032</td><td class="line"> QSet&lt;qlonglong&gt; idList;</td></tr>
<tr class="codeline" data-linenumber="1033"><td class="num" id="LN1033">1033</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1034"><td class="num" id="LN1034">1034</td><td class="line"> <span class='comment'>// Get all items DB id from all albums and all collections</span></td></tr>
<tr class="codeline" data-linenumber="1035"><td class="num" id="LN1035">1035</td><td class="line"> <span class='macro'>foreach (<span class='keyword'>int</span> albumId, albums2Scan)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(albums2Scan<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (int albumId<br> = *_container_.i; _container_.control; _container_.control =<br> 0)</span></span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 1041</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1036"><td class="num" id="LN1036">1036</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1037"><td class="num" id="LN1037">1037</td><td class="line"> imagesFromAlbums.unite(CoreDbAccess().db()-&gt;getItemIDsInAlbum(albumId).toSet());</td></tr>
<tr class="codeline" data-linenumber="1038"><td class="num" id="LN1038">1038</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1039"><td class="num" id="LN1039">1039</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1040"><td class="num" id="LN1040">1040</td><td class="line"> <span class='comment'>// Get all items DB id from all tags</span></td></tr>
<tr class="codeline" data-linenumber="1041"><td class="num" id="LN1041">1041</td><td class="line"> <span class='macro'>foreach (<span class='keyword'>int</span> albumId, tags2Scan)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(tags2Scan<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (int albumId<br> = *_container_.i; _container_.control; _container_.control =<br> 0)</span></span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 1046</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1042"><td class="num" id="LN1042">1042</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1043"><td class="num" id="LN1043">1043</td><td class="line"> imagesFromTags.unite(CoreDbAccess().db()-&gt;getItemIDsInTag(albumId).toSet());</td></tr>
<tr class="codeline" data-linenumber="1044"><td class="num" id="LN1044">1044</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1045"><td class="num" id="LN1045">1045</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1046"><td class="num" id="LN1046">1046</td><td class="line"> <span class='keyword'>switch</span> (relation)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Control jumps to 'case NoMix:' at line 1080</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1047"><td class="num" id="LN1047">1047</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1048"><td class="num" id="LN1048">1048</td><td class="line"> <span class='keyword'>case</span> Union:</td></tr>
<tr class="codeline" data-linenumber="1049"><td class="num" id="LN1049">1049</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1050"><td class="num" id="LN1050">1050</td><td class="line"> <span class='comment'>// ({} UNION A) UNION T = A UNION T</span></td></tr>
<tr class="codeline" data-linenumber="1051"><td class="num" id="LN1051">1051</td><td class="line"> idList.unite(imagesFromAlbums).unite(imagesFromTags);</td></tr>
<tr class="codeline" data-linenumber="1052"><td class="num" id="LN1052">1052</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="1053"><td class="num" id="LN1053">1053</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1054"><td class="num" id="LN1054">1054</td><td class="line"> <span class='keyword'>case</span> Intersection:</td></tr>
<tr class="codeline" data-linenumber="1055"><td class="num" id="LN1055">1055</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1056"><td class="num" id="LN1056">1056</td><td class="line"> <span class='comment'>// ({} UNION A) INTERSECT T = A INTERSECT T</span></td></tr>
<tr class="codeline" data-linenumber="1057"><td class="num" id="LN1057">1057</td><td class="line"> idList.unite(imagesFromAlbums).intersect(imagesFromTags);</td></tr>
<tr class="codeline" data-linenumber="1058"><td class="num" id="LN1058">1058</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="1059"><td class="num" id="LN1059">1059</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1060"><td class="num" id="LN1060">1060</td><td class="line"> <span class='keyword'>case</span> AlbumExclusive:</td></tr>
<tr class="codeline" data-linenumber="1061"><td class="num" id="LN1061">1061</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1062"><td class="num" id="LN1062">1062</td><td class="line"> <span class='comment'>// ({} UNION A) = A</span></td></tr>
<tr class="codeline" data-linenumber="1063"><td class="num" id="LN1063">1063</td><td class="line"> idList.unite(imagesFromAlbums);</td></tr>
<tr class="codeline" data-linenumber="1064"><td class="num" id="LN1064">1064</td><td class="line"> <span class='comment'>// (A INTERSECT T) = A'</span></td></tr>
<tr class="codeline" data-linenumber="1065"><td class="num" id="LN1065">1065</td><td class="line"> imagesFromAlbums.intersect(imagesFromTags);</td></tr>
<tr class="codeline" data-linenumber="1066"><td class="num" id="LN1066">1066</td><td class="line"> <span class='comment'>// A\A' = albums without tags</span></td></tr>
<tr class="codeline" data-linenumber="1067"><td class="num" id="LN1067">1067</td><td class="line"> idList.subtract(imagesFromAlbums);</td></tr>
<tr class="codeline" data-linenumber="1068"><td class="num" id="LN1068">1068</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="1069"><td class="num" id="LN1069">1069</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1070"><td class="num" id="LN1070">1070</td><td class="line"> <span class='keyword'>case</span> TagExclusive:</td></tr>
<tr class="codeline" data-linenumber="1071"><td class="num" id="LN1071">1071</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1072"><td class="num" id="LN1072">1072</td><td class="line"> <span class='comment'>// ({} UNION T) = TT</span></td></tr>
<tr class="codeline" data-linenumber="1073"><td class="num" id="LN1073">1073</td><td class="line"> idList.unite(imagesFromTags);</td></tr>
<tr class="codeline" data-linenumber="1074"><td class="num" id="LN1074">1074</td><td class="line"> <span class='comment'>// (A INTERSECT T) = A' = T'</span></td></tr>
<tr class="codeline" data-linenumber="1075"><td class="num" id="LN1075">1075</td><td class="line"> imagesFromAlbums.intersect(imagesFromTags);</td></tr>
<tr class="codeline" data-linenumber="1076"><td class="num" id="LN1076">1076</td><td class="line"> <span class='comment'>// T\T' = tags without albums</span></td></tr>
<tr class="codeline" data-linenumber="1077"><td class="num" id="LN1077">1077</td><td class="line"> idList.subtract(imagesFromAlbums);</td></tr>
<tr class="codeline" data-linenumber="1078"><td class="num" id="LN1078">1078</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="1079"><td class="num" id="LN1079">1079</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1080"><td class="num" id="LN1080">1080</td><td class="line"> <span class='keyword'>case</span> NoMix:</td></tr>
<tr class="codeline" data-linenumber="1081"><td class="num" id="LN1081">1081</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1082"><td class="num" id="LN1082">1082</td><td class="line"> <span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="1083"><td class="num" id="LN1083">1083</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">albums2Scan.isEmpty()</span> &amp;&amp; tags2Scan.isEmpty()))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:18ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1084"><td class="num" id="LN1084">1084</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1085"><td class="num" id="LN1085">1085</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_GENERAL_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_GENERAL_LOG().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/libs/database/haar/haariface.cpp", 1085<br>, __PRETTY_FUNCTION__, DIGIKAM_GENERAL_LOG().categoryName()).<br>warning()</span></span> &lt;&lt; <span class='string_literal'>"Duplicates search: Both the albums and the tags "</span></td></tr>
<tr class="codeline" data-linenumber="1086"><td class="num" id="LN1086">1086</td><td class="line"> <span class='string_literal'>"list are non-empty but the album/tag relation "</span></td></tr>
<tr class="codeline" data-linenumber="1087"><td class="num" id="LN1087">1087</td><td class="line"> <span class='string_literal'>"stated a NoMix. Skipping duplicates search"</span>;</td></tr>
<tr class="codeline" data-linenumber="1088"><td class="num" id="LN1088">1088</td><td class="line"> <span class='keyword'>return</span> QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt;();</td></tr>
<tr class="codeline" data-linenumber="1089"><td class="num" id="LN1089">1089</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1090"><td class="num" id="LN1090">1090</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1091"><td class="num" id="LN1091">1091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1092"><td class="num" id="LN1092">1092</td><td class="line"> <span class='comment'>// ({} UNION A) UNION T = A UNION T = A Xor T</span></td></tr>
<tr class="codeline" data-linenumber="1093"><td class="num" id="LN1093">1093</td><td class="line"> idList.unite(imagesFromAlbums).unite(imagesFromTags);</td></tr>
<tr class="codeline" data-linenumber="1094"><td class="num" id="LN1094">1094</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1095"><td class="num" id="LN1095">1095</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1096"><td class="num" id="LN1096">1096</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1097"><td class="num" id="LN1097">1097</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1098"><td class="num" id="LN1098">1098</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">findDuplicates(idList, requiredPercentage, maximumPercentage, searchResultRestriction, observer)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Calling 'HaarIface::findDuplicates'</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1099"><td class="num" id="LN1099">1099</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1100"><td class="num" id="LN1100">1100</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1101"><td class="num" id="LN1101">1101</td><td class="line">QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt; HaarIface::findDuplicates(<span class='keyword'>const</span> QSet&lt;qlonglong&gt;&amp; images2Scan,</td></tr>
<tr class="codeline" data-linenumber="1102"><td class="num" id="LN1102">1102</td><td class="line"> <span class='keyword'>double</span> requiredPercentage,</td></tr>
<tr class="codeline" data-linenumber="1103"><td class="num" id="LN1103">1103</td><td class="line"> <span class='keyword'>double</span> maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="1104"><td class="num" id="LN1104">1104</td><td class="line"> DuplicatesSearchRestrictions</td></tr>
<tr class="codeline" data-linenumber="1105"><td class="num" id="LN1105">1105</td><td class="line"> searchResultRestriction,</td></tr>
<tr class="codeline" data-linenumber="1106"><td class="num" id="LN1106">1106</td><td class="line"> HaarProgressObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="1107"><td class="num" id="LN1107">1107</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1108"><td class="num" id="LN1108">1108</td><td class="line"> QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt; resultsMap;</td></tr>
<tr class="codeline" data-linenumber="1109"><td class="num" id="LN1109">1109</td><td class="line"> QMap&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; &gt;::iterator similarity_it;</td></tr>
<tr class="codeline" data-linenumber="1110"><td class="num" id="LN1110">1110</td><td class="line"> QSet&lt;qlonglong&gt;::const_iterator it;</td></tr>
<tr class="codeline" data-linenumber="1111"><td class="num" id="LN1111">1111</td><td class="line"> QPair&lt;<span class='keyword'>double</span>, QMap&lt;qlonglong, <span class='keyword'>double</span>&gt; &gt; bestMatches;</td></tr>
<tr class="codeline" data-linenumber="1112"><td class="num" id="LN1112">1112</td><td class="line"> QList&lt;qlonglong&gt; imageIdList;</td></tr>
<tr class="codeline" data-linenumber="1113"><td class="num" id="LN1113">1113</td><td class="line"> QSet&lt;qlonglong&gt; resultsCandidates;</td></tr>
<tr class="codeline" data-linenumber="1114"><td class="num" id="LN1114">1114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1115"><td class="num" id="LN1115">1115</td><td class="line"> <span class='keyword'>int</span> total = 0;</td></tr>
<tr class="codeline" data-linenumber="1116"><td class="num" id="LN1116">1116</td><td class="line"> <span class='keyword'>int</span> progress = 0;</td></tr>
<tr class="codeline" data-linenumber="1117"><td class="num" id="LN1117">1117</td><td class="line"> <span class='keyword'>int</span> progressStep = 20;</td></tr>
<tr class="codeline" data-linenumber="1118"><td class="num" id="LN1118">1118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1119"><td class="num" id="LN1119">1119</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">observer</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Assuming 'observer' is non-null</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1120"><td class="num" id="LN1120">1120</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1121"><td class="num" id="LN1121">1121</td><td class="line"> total = images2Scan.count();</td></tr>
<tr class="codeline" data-linenumber="1122"><td class="num" id="LN1122">1122</td><td class="line"> progressStep = qMax(progressStep, total / 100);</td></tr>
<tr class="codeline" data-linenumber="1123"><td class="num" id="LN1123">1123</td><td class="line"> observer-&gt;totalNumberToScan(total);</td></tr>
<tr class="codeline" data-linenumber="1124"><td class="num" id="LN1124">1124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1125"><td class="num" id="LN1125">1125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1126"><td class="num" id="LN1126">1126</td><td class="line"> <span class='comment'>// create signature cache map for fast lookup</span></td></tr>
<tr class="codeline" data-linenumber="1127"><td class="num" id="LN1127">1127</td><td class="line"> d-&gt;setSignatureCacheEnabled(<span class='keyword'>true</span>, images2Scan);</td></tr>
<tr class="codeline" data-linenumber="1128"><td class="num" id="LN1128">1128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1129"><td class="num" id="LN1129">1129</td><td class="line"> <span class='keyword'>for</span> (it = images2Scan.constBegin() ; it != images2Scan.constEnd() ; ++it)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1130"><td class="num" id="LN1130">1130</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1131"><td class="num" id="LN1131">1131</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; <span class="mrange"><span class="mrange">observer-&gt;isCanceled()</span></span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgEvent" style="margin-left:25ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:25ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1132"><td class="num" id="LN1132">1132</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1133"><td class="num" id="LN1133">1133</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="1134"><td class="num" id="LN1134">1134</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1135"><td class="num" id="LN1135">1135</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1136"><td class="num" id="LN1136">1136</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange"><span class="mrange">!resultsCandidates.contains(*it)</span></span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1137"><td class="num" id="LN1137">1137</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1138"><td class="num" id="LN1138">1138</td><td class="line"> QList&lt;<span class='keyword'>int</span>&gt; targetAlbums;</td></tr>
<tr class="codeline" data-linenumber="1139"><td class="num" id="LN1139">1139</td><td class="line"> <span class='comment'>// find images with required similarity</span></td></tr>
<tr class="codeline" data-linenumber="1140"><td class="num" id="LN1140">1140</td><td class="line"> bestMatches = bestMatchesForImageWithThreshold(*it, requiredPercentage, maximumPercentage,</td></tr>
<tr class="codeline" data-linenumber="1141"><td class="num" id="LN1141">1141</td><td class="line"> targetAlbums, searchResultRestriction, ScannedSketch);</td></tr>
<tr class="codeline" data-linenumber="1142"><td class="num" id="LN1142">1142</td><td class="line"> <span class='comment'>// We need only the image ids from the best matches map.</span></td></tr>
<tr class="codeline" data-linenumber="1143"><td class="num" id="LN1143">1143</td><td class="line"> imageIdList = bestMatches.second.keys();</td></tr>
<tr class="codeline" data-linenumber="1144"><td class="num" id="LN1144">1144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1145"><td class="num" id="LN1145">1145</td><td class="line"> <span class='keyword'>if</span> (!imageIdList.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="1146"><td class="num" id="LN1146">1146</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1147"><td class="num" id="LN1147">1147</td><td class="line"> <span class='comment'>// the list will usually contain one image: the original. Filter out.</span></td></tr>
<tr class="codeline" data-linenumber="1148"><td class="num" id="LN1148">1148</td><td class="line"> <span class='keyword'>if</span> (!(imageIdList.count() == 1 &amp;&amp; imageIdList.first() == *it))</td></tr>
<tr class="codeline" data-linenumber="1149"><td class="num" id="LN1149">1149</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1150"><td class="num" id="LN1150">1150</td><td class="line"> <span class='comment'>// make a lookup for the average similarity</span></td></tr>
<tr class="codeline" data-linenumber="1151"><td class="num" id="LN1151">1151</td><td class="line"> similarity_it = resultsMap.find(bestMatches.first);</td></tr>
<tr class="codeline" data-linenumber="1152"><td class="num" id="LN1152">1152</td><td class="line"> <span class='comment'>// If there is an entry for this similarity, add the result set.</span></td></tr>
<tr class="codeline" data-linenumber="1153"><td class="num" id="LN1153">1153</td><td class="line"> <span class='comment'>// Else, create a new similarity entry.</span></td></tr>
<tr class="codeline" data-linenumber="1154"><td class="num" id="LN1154">1154</td><td class="line"> <span class='keyword'>if</span> (similarity_it != resultsMap.end())</td></tr>
<tr class="codeline" data-linenumber="1155"><td class="num" id="LN1155">1155</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1156"><td class="num" id="LN1156">1156</td><td class="line"> similarity_it-&gt;insert(*it, imageIdList);</td></tr>
<tr class="codeline" data-linenumber="1157"><td class="num" id="LN1157">1157</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1158"><td class="num" id="LN1158">1158</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1159"><td class="num" id="LN1159">1159</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1160"><td class="num" id="LN1160">1160</td><td class="line"> QMap&lt;qlonglong, QList&lt;qlonglong&gt; &gt; result;</td></tr>
<tr class="codeline" data-linenumber="1161"><td class="num" id="LN1161">1161</td><td class="line"> result.insert(*it, imageIdList);</td></tr>
<tr class="codeline" data-linenumber="1162"><td class="num" id="LN1162">1162</td><td class="line"> resultsMap.insert(bestMatches.first, result);</td></tr>
<tr class="codeline" data-linenumber="1163"><td class="num" id="LN1163">1163</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1164"><td class="num" id="LN1164">1164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1165"><td class="num" id="LN1165">1165</td><td class="line"> resultsCandidates &lt;&lt; *it;</td></tr>
<tr class="codeline" data-linenumber="1166"><td class="num" id="LN1166">1166</td><td class="line"> resultsCandidates.unite(imageIdList.toSet());</td></tr>
<tr class="codeline" data-linenumber="1167"><td class="num" id="LN1167">1167</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1168"><td class="num" id="LN1168">1168</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1169"><td class="num" id="LN1169">1169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1170"><td class="num" id="LN1170">1170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1171"><td class="num" id="LN1171">1171</td><td class="line"> <span class='comment'>// if an imageid is not a results candidate, remove it</span></td></tr>
<tr class="codeline" data-linenumber="1172"><td class="num" id="LN1172">1172</td><td class="line"> <span class='comment'>// from the cached signature map as well,</span></td></tr>
<tr class="codeline" data-linenumber="1173"><td class="num" id="LN1173">1173</td><td class="line"> <span class='comment'>// to greatly improve speed</span></td></tr>
<tr class="codeline" data-linenumber="1174"><td class="num" id="LN1174">1174</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange"><span class="mrange">!resultsCandidates.contains(*it)</span></span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#EndPath" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1175"><td class="num" id="LN1175">1175</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1176"><td class="num" id="LN1176">1176</td><td class="line"> d-&gt;signatureCache-&gt;remove(*it);</td></tr>
<tr class="codeline" data-linenumber="1177"><td class="num" id="LN1177">1177</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1178"><td class="num" id="LN1178">1178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1179"><td class="num" id="LN1179">1179</td><td class="line"> ++progress;</td></tr>
<tr class="codeline" data-linenumber="1180"><td class="num" id="LN1180">1180</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1181"><td class="num" id="LN1181">1181</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; (<span class="mrange">progress == total</span> || <span class="mrange">progress % progressStep</span> == 0))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgEvent" style="margin-left:26ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Assuming 'progress' is equal to 'total'</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:56ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>The result of the '%' expression is undefined</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1182"><td class="num" id="LN1182">1182</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1183"><td class="num" id="LN1183">1183</td><td class="line"> observer-&gt;processedNumber(progress);</td></tr>
<tr class="codeline" data-linenumber="1184"><td class="num" id="LN1184">1184</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1185"><td class="num" id="LN1185">1185</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1186"><td class="num" id="LN1186">1186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1187"><td class="num" id="LN1187">1187</td><td class="line"> <span class='comment'>// make sure the progress bar is really set to 100% when search is finished</span></td></tr>
<tr class="codeline" data-linenumber="1188"><td class="num" id="LN1188">1188</td><td class="line"> <span class='keyword'>if</span> (observer)</td></tr>
<tr class="codeline" data-linenumber="1189"><td class="num" id="LN1189">1189</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1190"><td class="num" id="LN1190">1190</td><td class="line"> observer-&gt;processedNumber(total);</td></tr>
<tr class="codeline" data-linenumber="1191"><td class="num" id="LN1191">1191</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1192"><td class="num" id="LN1192">1192</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1193"><td class="num" id="LN1193">1193</td><td class="line"> <span class='comment'>// disable cache</span></td></tr>
<tr class="codeline" data-linenumber="1194"><td class="num" id="LN1194">1194</td><td class="line"> d-&gt;setSignatureCacheEnabled(<span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="1195"><td class="num" id="LN1195">1195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1196"><td class="num" id="LN1196">1196</td><td class="line"> <span class='keyword'>return</span> resultsMap;</td></tr>
<tr class="codeline" data-linenumber="1197"><td class="num" id="LN1197">1197</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1198"><td class="num" id="LN1198">1198</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1199"><td class="num" id="LN1199">1199</td><td class="line"><span class='keyword'>double</span> HaarIface::calculateScore(Haar::SignatureData&amp; querySig,</td></tr>
<tr class="codeline" data-linenumber="1200"><td class="num" id="LN1200">1200</td><td class="line"> Haar::SignatureData&amp; targetSig,</td></tr>
<tr class="codeline" data-linenumber="1201"><td class="num" id="LN1201">1201</td><td class="line"> Haar::Weights&amp; weights,</td></tr>
<tr class="codeline" data-linenumber="1202"><td class="num" id="LN1202">1202</td><td class="line"> Haar::SignatureMap** <span class='keyword'>const</span> queryMaps)</td></tr>
<tr class="codeline" data-linenumber="1203"><td class="num" id="LN1203">1203</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1204"><td class="num" id="LN1204">1204</td><td class="line"> <span class='keyword'>double</span> score = 0.0;</td></tr>
<tr class="codeline" data-linenumber="1205"><td class="num" id="LN1205">1205</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1206"><td class="num" id="LN1206">1206</td><td class="line"> <span class='comment'>// Step 1: Initialize scores with average intensity values of all three channels</span></td></tr>
<tr class="codeline" data-linenumber="1207"><td class="num" id="LN1207">1207</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> channel = 0 ; channel &lt; 3 ; ++channel)</td></tr>
<tr class="codeline" data-linenumber="1208"><td class="num" id="LN1208">1208</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1209"><td class="num" id="LN1209">1209</td><td class="line"> score += weights.weightForAverage(channel) * fabs(querySig.avg[channel] - targetSig.avg[channel]);</td></tr>
<tr class="codeline" data-linenumber="1210"><td class="num" id="LN1210">1210</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1211"><td class="num" id="LN1211">1211</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1212"><td class="num" id="LN1212">1212</td><td class="line"> <span class='comment'>// Step 2: Decrease the score if query and target have significant coefficients in common</span></td></tr>
<tr class="codeline" data-linenumber="1213"><td class="num" id="LN1213">1213</td><td class="line"> Haar::Idx* sig = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1214"><td class="num" id="LN1214">1214</td><td class="line"> Haar::SignatureMap* queryMap = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1215"><td class="num" id="LN1215">1215</td><td class="line"> <span class='keyword'>int</span> x = 0;</td></tr>
<tr class="codeline" data-linenumber="1216"><td class="num" id="LN1216">1216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1217"><td class="num" id="LN1217">1217</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> channel = 0 ; channel &lt; 3 ; ++channel)</td></tr>
<tr class="codeline" data-linenumber="1218"><td class="num" id="LN1218">1218</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1219"><td class="num" id="LN1219">1219</td><td class="line"> sig = targetSig.sig[channel];</td></tr>
<tr class="codeline" data-linenumber="1220"><td class="num" id="LN1220">1220</td><td class="line"> queryMap = queryMaps[channel];</td></tr>
<tr class="codeline" data-linenumber="1221"><td class="num" id="LN1221">1221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1222"><td class="num" id="LN1222">1222</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> coef = 0 ; coef &lt; Haar::NumberOfCoefficients ; ++coef)</td></tr>
<tr class="codeline" data-linenumber="1223"><td class="num" id="LN1223">1223</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1224"><td class="num" id="LN1224">1224</td><td class="line"> <span class='comment'>// x is a pixel index, either positive or negative, 0..16384</span></td></tr>
<tr class="codeline" data-linenumber="1225"><td class="num" id="LN1225">1225</td><td class="line"> x = sig[coef];</td></tr>
<tr class="codeline" data-linenumber="1226"><td class="num" id="LN1226">1226</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1227"><td class="num" id="LN1227">1227</td><td class="line"> <span class='comment'>// If x is a significant coefficient with the same sign in the query signature as well,</span></td></tr>
<tr class="codeline" data-linenumber="1228"><td class="num" id="LN1228">1228</td><td class="line"> <span class='comment'>// decrease the score (lower is better)</span></td></tr>
<tr class="codeline" data-linenumber="1229"><td class="num" id="LN1229">1229</td><td class="line"> <span class='comment'>// Note: both method calls called with x accept positive or negative values</span></td></tr>
<tr class="codeline" data-linenumber="1230"><td class="num" id="LN1230">1230</td><td class="line"> <span class='keyword'>if</span> ((*queryMap)[x])</td></tr>
<tr class="codeline" data-linenumber="1231"><td class="num" id="LN1231">1231</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1232"><td class="num" id="LN1232">1232</td><td class="line"> score -= weights.weight(d-&gt;bin-&gt;binAbs(x), channel);</td></tr>
<tr class="codeline" data-linenumber="1233"><td class="num" id="LN1233">1233</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1234"><td class="num" id="LN1234">1234</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1235"><td class="num" id="LN1235">1235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1236"><td class="num" id="LN1236">1236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1237"><td class="num" id="LN1237">1237</td><td class="line"> <span class='keyword'>return</span> score;</td></tr>
<tr class="codeline" data-linenumber="1238"><td class="num" id="LN1238">1238</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1239"><td class="num" id="LN1239">1239</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1240"><td class="num" id="LN1240">1240</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-6150ea.html b/static/reports/clang/master/report-9c1052.html
similarity index 99%
rename from static/reports/clang/master/report-6150ea.html
rename to static/reports/clang/master/report-9c1052.html
index dad011cf2..54522812d 100644
--- a/static/reports/clang/master/report-6150ea.html
+++ b/static/reports/clang/master/report-9c1052.html
@@ -1,1116 +1,1116 @@
<!doctype html>
<html>
<head>
<title>/usr/lib64/qt5/include/QtTest/qtestcase.h</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential memory leak -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /usr/lib64/qt5/include/QtTest/qtestcase.h -->
<!-- FILENAME qtestcase.h -->
<!-- FUNCTIONNAME qCompare -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 0b438c3d20a3f96c6976aa9e5590de36 -->
<!-- BUGLINE 359 -->
<!-- BUGCOLUMN 9 -->
<!-- BUGPATHLENGTH 9 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>usr/lib64/qt5/include/QtTest/qtestcase.h</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 359, column 9</a><br />Potential memory leak</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">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/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 -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/build.scan/core/tests/database/databasefieldstest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/core/libs/database/imagehistory -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/database -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp -faddrsig
+<div class="spoiler">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/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 -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/build.scan/core/tests/database/databasefieldstest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/core/libs/database/imagehistory -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/database -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"98": 1, "99": 1, "100": 1}, "4521": {"57": 1, "68": 1, "71": 1, "120": 1, "122": 1, "137": 1, "144": 1, "148": 1}, "60665": {"264": 1, "265": 1, "266": 1, "267": 1, "268": 1, "269": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}, "64985": {"278": 1, "279": 1, "280": 1, "283": 1, "284": 1, "285": 1, "293": 1, "294": 1, "295": 1, "310": 1, "311": 1, "312": 1, "313": 1, "314": 1, "316": 1, "320": 1, "321": 1, "322": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<div id=File1>
<h4 class=FileName>/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp</h4>
<div class=FileNav><a href="#File60665">&#x2192;</a></div></div>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2013-06-29</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Test the functions for dealing with DatabaseFields</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2013 by Michael G. Hansen &lt;mike at mghansen dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "databasefieldstest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QTest&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include "coredbfields.h"</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(DatabaseFieldsTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); DatabaseFieldsTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> DatabaseFields;</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::cleanupTestCase()</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::initTestCase()</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#define <span class='macro'>DECLARE_ITERATOR_TEST(Field)<span class='expansion'>{ Field i; for (FieldIterator it; !it.atEnd(); ++it) { i |= *<br>it; } do { if (!QTest::qCompare(i, FieldAll, "i", "FieldAll",<br> "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 48)) return;} while (false); }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> <span class='directive'>Field i; \</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> <span class='directive'>for (Field##Iterator it; !it.atEnd(); ++it) \</span></td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> <span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> <span class='directive'>i |= *it; \</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='directive'><span class='macro'>QCOMPARE(i, Field##All)<span class='expansion'>do { if (!QTest::qCompare(i, Field##All, "i", "Field##All", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 55)) return;} while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testIterators()</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='comment'>// test that the iterator iterates over all fields</span></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(Images)<span class='expansion'>{ Images i; for (ImagesIterator it; !it.atEnd(); ++it) { i |=<br> *it; } do { if (!QTest::qCompare(i, ImagesAll, "i", "ImagesAll"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 61)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(ItemInformation)<span class='expansion'>{ ItemInformation i; for (ItemInformationIterator it; !it.atEnd<br>(); ++it) { i |= *it; } do { if (!QTest::qCompare(i, ItemInformationAll<br>, "i", "ItemInformationAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 62)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(ImageMetadata)<span class='expansion'>{ ImageMetadata i; for (ImageMetadataIterator it; !it.atEnd()<br>; ++it) { i |= *it; } do { if (!QTest::qCompare(i, ImageMetadataAll<br>, "i", "ImageMetadataAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 63)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(VideoMetadata)<span class='expansion'>{ VideoMetadata i; for (VideoMetadataIterator it; !it.atEnd()<br>; ++it) { i |= *it; } do { if (!QTest::qCompare(i, VideoMetadataAll<br>, "i", "VideoMetadataAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 64)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(ItemPositions)<span class='expansion'>{ ItemPositions i; for (ItemPositionsIterator it; !it.atEnd()<br>; ++it) { i |= *it; } do { if (!QTest::qCompare(i, ItemPositionsAll<br>, "i", "ItemPositionsAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 65)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(ItemComments)<span class='expansion'>{ ItemComments i; for (ItemCommentsIterator it; !it.atEnd(); ++<br>it) { i |= *it; } do { if (!QTest::qCompare(i, ItemCommentsAll<br>, "i", "ItemCommentsAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 66)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='macro'>DECLARE_ITERATOR_TEST(ImageHistoryInfo)<span class='expansion'>{ ImageHistoryInfo i; for (ImageHistoryInfoIterator it; !it.atEnd<br>(); ++it) { i |= *it; } do { if (!QTest::qCompare(i, ImageHistoryInfoAll<br>, "i", "ImageHistoryInfoAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 67)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testMetaInfo()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"><span class='comment'>// Do not compile due to undefined reference to `Digikam::DatabaseFields::FieldMetaInfo&lt;QFlags&lt;Digikam::DatabaseFields::ImagesField&gt; &gt;::Last'</span></td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"><span class='comment'>// Happens even though file defining those libs/database/framework/databasefields.h is included and linking against digikamgui.</span></td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;Images&gt;::Last, ImagesLast);</span></td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;ItemInformation&gt;::Last, ItemInformationLast);</span></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;ImageMetadata&gt;::Last, ImageMetadataLast);</span></td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;ItemComments&gt;::Last, ItemCommentsLast);</span></td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;ItemPositions&gt;::Last, ItemPositionsLast);</span></td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;ImageHistoryInfo&gt;::Last, ImageHistoryInfoLast);</span></td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='comment'>QCOMPARE(FieldMetaInfo&lt;VideoMetadata&gt;::Last, VideoMetadataLast);</span></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"><span class='directive'>#define <span class='macro'>DECLARE_ITERATORSETONLY_TEST(Field)<span class='expansion'>for (Field i = FieldNone; i&lt;=FieldAll; i=Field(int(i)+1)) {<br> Field i2 = FieldNone; for (DatabaseFieldsEnumIteratorSetOnly<br>&lt;Field&gt; iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly<br>; } do { if (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 87)) return;} while (false); }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='directive'>for (Field i = Field##None; i&lt;=Field##All; i=Field(int(i)+1)) \</span></td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='directive'>Field i2 = Field##None; \</span></td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='directive'>for (DatabaseFieldsEnumIteratorSetOnly&lt;Field&gt; iOnly(i); !iOnly.atEnd(); ++iOnly) \</span></td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='directive'>i2 |= *iOnly; \</span></td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='directive'><span class='macro'>QCOMPARE(i, i2)<span class='expansion'>do { if (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 95)) return;} while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testIteratorsSetOnly()</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class="mrange"><span class='macro'>DECLARE_ITERATORSETONLY_TEST</span>(Images)<span class='expansion'>for (Images i = ImagesNone; i&lt;=ImagesAll; i=Images(int(i)+<br>1)) { Images i2 = ImagesNone; for (DatabaseFieldsEnumIteratorSetOnly<br>&lt;Images&gt; iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly<br>; } do { if (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 100)) return;} while (false); }</span></span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">1</div></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 100</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Calling 'qCompare&lt;QFlags&lt;Digikam::DatabaseFields::ImagesField&gt;&gt;'</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='macro'>DECLARE_ITERATORSETONLY_TEST(ItemInformation)<span class='expansion'>for (ItemInformation i = ItemInformationNone; i&lt;=ItemInformationAll<br>; i=ItemInformation(int(i)+1)) { ItemInformation i2 = ItemInformationNone<br>; for (DatabaseFieldsEnumIteratorSetOnly&lt;ItemInformation&gt;<br> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if<br> (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 101)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>DECLARE_ITERATORSETONLY_TEST(ImageMetadata)<span class='expansion'>for (ImageMetadata i = ImageMetadataNone; i&lt;=ImageMetadataAll<br>; i=ImageMetadata(int(i)+1)) { ImageMetadata i2 = ImageMetadataNone<br>; for (DatabaseFieldsEnumIteratorSetOnly&lt;ImageMetadata&gt;<br> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if<br> (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 102)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> <span class='macro'>DECLARE_ITERATORSETONLY_TEST(VideoMetadata)<span class='expansion'>for (VideoMetadata i = VideoMetadataNone; i&lt;=VideoMetadataAll<br>; i=VideoMetadata(int(i)+1)) { VideoMetadata i2 = VideoMetadataNone<br>; for (DatabaseFieldsEnumIteratorSetOnly&lt;VideoMetadata&gt;<br> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if<br> (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 103)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='macro'>DECLARE_ITERATORSETONLY_TEST(ItemPositions)<span class='expansion'>for (ItemPositions i = ItemPositionsNone; i&lt;=ItemPositionsAll<br>; i=ItemPositions(int(i)+1)) { ItemPositions i2 = ItemPositionsNone<br>; for (DatabaseFieldsEnumIteratorSetOnly&lt;ItemPositions&gt;<br> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if<br> (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 104)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='macro'>DECLARE_ITERATORSETONLY_TEST(ItemComments)<span class='expansion'>for (ItemComments i = ItemCommentsNone; i&lt;=ItemCommentsAll<br>; i=ItemComments(int(i)+1)) { ItemComments i2 = ItemCommentsNone<br>; for (DatabaseFieldsEnumIteratorSetOnly&lt;ItemComments&gt; iOnly<br>(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if (!QTest<br>::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 105)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> <span class='macro'>DECLARE_ITERATORSETONLY_TEST(ImageHistoryInfo)<span class='expansion'>for (ImageHistoryInfo i = ImageHistoryInfoNone; i&lt;=ImageHistoryInfoAll<br>; i=ImageHistoryInfo(int(i)+1)) { ImageHistoryInfo i2 = ImageHistoryInfoNone<br>; for (DatabaseFieldsEnumIteratorSetOnly&lt;ImageHistoryInfo&gt;<br> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if<br> (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 106)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testSet()</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> <span class='macro'>QCOMPARE(Set(ImagesFirst).getImages(), ImagesFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(ImagesFirst).getImages(), ImagesFirst<br>, "Set(ImagesFirst).getImages()", "ImagesFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 111)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>QCOMPARE(Set(ItemInformationFirst).getItemInformation(), ItemInformationFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(ItemInformationFirst).getItemInformation<br>(), ItemInformationFirst, "Set(ItemInformationFirst).getItemInformation()"<br>, "ItemInformationFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 112)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='macro'>QCOMPARE(Set(ImageMetadataFirst).getImageMetadata(), ImageMetadataFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(ImageMetadataFirst).getImageMetadata<br>(), ImageMetadataFirst, "Set(ImageMetadataFirst).getImageMetadata()"<br>, "ImageMetadataFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 113)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='macro'>QCOMPARE(Set(VideoMetadataFirst).getVideoMetadata(), VideoMetadataFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(VideoMetadataFirst).getVideoMetadata<br>(), VideoMetadataFirst, "Set(VideoMetadataFirst).getVideoMetadata()"<br>, "VideoMetadataFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 114)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(Set(ItemPositionsFirst).getItemPositions(), ItemPositionsFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(ItemPositionsFirst).getItemPositions<br>(), ItemPositionsFirst, "Set(ItemPositionsFirst).getItemPositions()"<br>, "ItemPositionsFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='macro'>QCOMPARE(Set(ItemCommentsFirst).getItemComments(), ItemCommentsFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(ItemCommentsFirst).getItemComments<br>(), ItemCommentsFirst, "Set(ItemCommentsFirst).getItemComments()"<br>, "ItemCommentsFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 116)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='macro'>QCOMPARE(Set(ImageHistoryInfoFirst).getImageHistoryInfo(), ImageHistoryInfoFirst)<span class='expansion'>do { if (!QTest::qCompare(Set(ImageHistoryInfoFirst).getImageHistoryInfo<br>(), ImageHistoryInfoFirst, "Set(ImageHistoryInfoFirst).getImageHistoryInfo()"<br>, "ImageHistoryInfoFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 117)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"><span class='keyword'>typedef</span> Hash&lt;Set&gt; SetHash;</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line">SetHash SetHashAddSets(<span class='keyword'>const</span> SetHash&amp; targetIn, <span class='keyword'>const</span> Set&amp; bits)</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> SetHash target(targetIn);</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;Images&gt; it(bits.getImages()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;ItemInformation&gt; it(bits.getItemInformation()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;ImageMetadata&gt; it(bits.getImageMetadata()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;VideoMetadata&gt; it(bits.getVideoMetadata()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;ItemComments&gt; it(bits.getItemComments()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;ItemPositions&gt; it(bits.getItemPositions()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='keyword'>for</span> (DatabaseFieldsEnumIteratorSetOnly&lt;ImageHistoryInfo&gt; it(bits.getImageHistoryInfo()); !it.atEnd(); ++it)</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> target.insertField(*it, Set(*it));</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='keyword'>return</span> target;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testSetHashAddSets()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> SetHash t;</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> <span class='keyword'>int</span> itemCount = 0;</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='macro'>QVERIFY(t.isEmpty())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(t.isEmpty())<br>, "t.isEmpty()", "", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 169)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ImagesFirst));</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 172)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ImagesFirst).getImages(), ImagesFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ImagesFirst).getImages(), ImagesFirst<br>, "t.value(ImagesFirst).getImages()", "ImagesFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 173)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ImagesLast));</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ImagesFirst).getImages(), ImagesFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ImagesFirst).getImages(), ImagesFirst<br>, "t.value(ImagesFirst).getImages()", "ImagesFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 178)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='comment'>// test insertion of or`ed values</span></td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ItemInformationFirst | ItemInformationLast));</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> itemCount+=2;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 183)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ItemInformationFirst).getItemInformation(), ItemInformationFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ItemInformationFirst).getItemInformation<br>(), ItemInformationFirst, "t.value(ItemInformationFirst).getItemInformation()"<br>, "ItemInformationFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 184)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ItemInformationLast).getItemInformation(), ItemInformationLast)<span class='expansion'>do { if (!QTest::qCompare(t.value(ItemInformationLast).getItemInformation<br>(), ItemInformationLast, "t.value(ItemInformationLast).getItemInformation()"<br>, "ItemInformationLast", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 185)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ImageMetadataFirst));</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 189)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ImageMetadataFirst).getImageMetadata(), ImageMetadataFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ImageMetadataFirst).getImageMetadata<br>(), ImageMetadataFirst, "t.value(ImageMetadataFirst).getImageMetadata()"<br>, "ImageMetadataFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 190)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(VideoMetadataFirst));</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 194)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> <span class='macro'>QCOMPARE(t.value(VideoMetadataFirst).getVideoMetadata(), VideoMetadataFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(VideoMetadataFirst).getVideoMetadata<br>(), VideoMetadataFirst, "t.value(VideoMetadataFirst).getVideoMetadata()"<br>, "VideoMetadataFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 195)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ItemCommentsFirst));</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ItemCommentsFirst).getItemComments(), ItemCommentsFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ItemCommentsFirst).getItemComments<br>(), ItemCommentsFirst, "t.value(ItemCommentsFirst).getItemComments()"<br>, "ItemCommentsFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ItemPositionsFirst));</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ItemPositionsFirst).getItemPositions(), ItemPositionsFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ItemPositionsFirst).getItemPositions<br>(), ItemPositionsFirst, "t.value(ItemPositionsFirst).getItemPositions()"<br>, "ItemPositionsFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> t = SetHashAddSets(t, DatabaseFields::Set(ImageHistoryInfoFirst));</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> ++itemCount;</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> <span class='macro'>QCOMPARE(t.size(), itemCount)<span class='expansion'>do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 209)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='macro'>QCOMPARE(t.value(ImageHistoryInfoFirst).getImageHistoryInfo(), ImageHistoryInfoFirst)<span class='expansion'>do { if (!QTest::qCompare(t.value(ImageHistoryInfoFirst).getImageHistoryInfo<br>(), ImageHistoryInfoFirst, "t.value(ImageHistoryInfoFirst).getImageHistoryInfo()"<br>, "ImageHistoryInfoFirst", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 210)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testHashRemoveAll()</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> Set setToAdd =</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> Set(DatabaseFields::Set(ImagesFirst | ImagesLast))</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> .setFields(DatabaseFields::Set(ItemInformationFirst))</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> .setFields(DatabaseFields::Set(ImageMetadataFirst))</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> .setFields(DatabaseFields::Set(VideoMetadataFirst))</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> .setFields(DatabaseFields::Set(ItemCommentsFirst))</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> .setFields(DatabaseFields::Set(ItemPositionsFirst | ItemPositionsLast))</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> .setFields(DatabaseFields::Set(ImageHistoryInfoFirst));</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> SetHash t;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> t = SetHashAddSets(t, setToAdd);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> c1 = t.size();</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='comment'>// test regular remove</span></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> SetHash t2(t);</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QCOMPARE(t2.remove(ImagesFirst), 1)<span class='expansion'>do { if (!QTest::qCompare(t2.remove(ImagesFirst), 1, "t2.remove(ImagesFirst)"<br>, "1", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> <span class='macro'>QCOMPARE(t2.size(), c1-1)<span class='expansion'>do { if (!QTest::qCompare(t2.size(), c1-1, "t2.size()", "c1-1"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 233)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='comment'>// test removeAllFields: First and Last are in the hash, None is not --&gt; 2 entries should be removed</span></td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> SetHash t3(t);</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(t3.removeAllFields(ImagesFirst | ImagesLast | ImagesNone), 2)<span class='expansion'>do { if (!QTest::qCompare(t3.removeAllFields(ImagesFirst | ImagesLast<br> | ImagesNone), 2, "t3.removeAllFields(ImagesFirst | ImagesLast | ImagesNone)"<br>, "2", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(t3.size(), c1-2)<span class='expansion'>do { if (!QTest::qCompare(t3.size(), c1-2, "t3.size()", "c1-2"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"><span class='directive'>#define <span class='macro'>DECLARE_MINSIZE_TEST(FieldName)<span class='expansion'>{ const FieldMetaInfo&lt;FieldName&gt;::MinSizeType m = FieldNameAll<br>; const FieldName v = FieldMetaInfo&lt;FieldName&gt;::fromMinSizeType<br>(m); do { if (!QTest::qCompare(v, FieldNameAll, "v", "FieldNameAll"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 241)) return;} while (false); }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='directive'>{ \</span></td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='directive'>const FieldMetaInfo&lt;FieldName&gt;::MinSizeType m = FieldName##All; \</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> <span class='directive'>const FieldName v = FieldMetaInfo&lt;FieldName&gt;::fromMinSizeType(m); \</span></td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='directive'><span class='macro'>QCOMPARE(v, FieldName##All)<span class='expansion'>do { if (!QTest::qCompare(v, FieldName##All, "v", "FieldName##All"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 245)) return;} while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> <span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> <span class='comment'>* Verify that the minimum size types still hold all info of the enum.</span></td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"><span class='keyword'>void</span> DatabaseFieldsTest::testMinSizeType()</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(Images)<span class='expansion'>{ const FieldMetaInfo&lt;Images&gt;::MinSizeType m = ImagesAll<br>; const Images v = FieldMetaInfo&lt;Images&gt;::fromMinSizeType<br>(m); do { if (!QTest::qCompare(v, ImagesAll, "v", "ImagesAll"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 253)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(ItemInformation)<span class='expansion'>{ const FieldMetaInfo&lt;ItemInformation&gt;::MinSizeType m =<br> ItemInformationAll; const ItemInformation v = FieldMetaInfo&lt;<br>ItemInformation&gt;::fromMinSizeType(m); do { if (!QTest::qCompare<br>(v, ItemInformationAll, "v", "ItemInformationAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 254)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(ImageMetadata)<span class='expansion'>{ const FieldMetaInfo&lt;ImageMetadata&gt;::MinSizeType m = ImageMetadataAll<br>; const ImageMetadata v = FieldMetaInfo&lt;ImageMetadata&gt;::<br>fromMinSizeType(m); do { if (!QTest::qCompare(v, ImageMetadataAll<br>, "v", "ImageMetadataAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 255)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(ItemComments)<span class='expansion'>{ const FieldMetaInfo&lt;ItemComments&gt;::MinSizeType m = ItemCommentsAll<br>; const ItemComments v = FieldMetaInfo&lt;ItemComments&gt;::fromMinSizeType<br>(m); do { if (!QTest::qCompare(v, ItemCommentsAll, "v", "ItemCommentsAll"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 256)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(ItemPositions)<span class='expansion'>{ const FieldMetaInfo&lt;ItemPositions&gt;::MinSizeType m = ItemPositionsAll<br>; const ItemPositions v = FieldMetaInfo&lt;ItemPositions&gt;::<br>fromMinSizeType(m); do { if (!QTest::qCompare(v, ItemPositionsAll<br>, "v", "ItemPositionsAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 257)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(ImageHistoryInfo)<span class='expansion'>{ const FieldMetaInfo&lt;ImageHistoryInfo&gt;::MinSizeType m =<br> ImageHistoryInfoAll; const ImageHistoryInfo v = FieldMetaInfo<br>&lt;ImageHistoryInfo&gt;::fromMinSizeType(m); do { if (!QTest<br>::qCompare(v, ImageHistoryInfoAll, "v", "ImageHistoryInfoAll"<br>, "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 258)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='macro'>DECLARE_MINSIZE_TEST(VideoMetadata)<span class='expansion'>{ const FieldMetaInfo&lt;VideoMetadata&gt;::MinSizeType m = VideoMetadataAll<br>; const VideoMetadata v = FieldMetaInfo&lt;VideoMetadata&gt;::<br>fromMinSizeType(m); do { if (!QTest::qCompare(v, VideoMetadataAll<br>, "v", "VideoMetadataAll", "/mnt/devel/GIT/6.x/core/tests/database/databasefieldstest.cpp"<br>, 259)) return;} while (false); }</span></span></td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line">}</td></tr>
</table><hr class=divider>
<div id=File60665>
<div class=FileNav><a href="#File1">&#x2190;</a></div><h4 class=FileName>/usr/lib64/qt5/include/QtTest/qtestcase.h</h4>
</div>
<table class="code" data-fileid="60665">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/****************************************************************************</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"><span class='comment'>** Copyright (C) 2016 The Qt Company Ltd.</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"><span class='comment'>** Contact: https://www.qt.io/licensing/</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"><span class='comment'>** This file is part of the QtTest module of the Qt Toolkit.</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"><span class='comment'>** $QT_BEGIN_LICENSE:LGPL$</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"><span class='comment'>** Commercial License Usage</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"><span class='comment'>** Licensees holding valid commercial Qt licenses may use this file in</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"><span class='comment'>** accordance with the commercial license agreement provided with the</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"><span class='comment'>** Software or, alternatively, in accordance with the terms contained in</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"><span class='comment'>** a written agreement between you and The Qt Company. For licensing terms</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"><span class='comment'>** and conditions see https://www.qt.io/terms-conditions. For further</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"><span class='comment'>** information use the contact form at https://www.qt.io/contact-us.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"><span class='comment'>** GNU Lesser General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU Lesser</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"><span class='comment'>** General Public License version 3 as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.LGPL3 included in the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"><span class='comment'>** packaging of this file. Please review the following information to</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"><span class='comment'>** ensure the GNU Lesser General Public License version 3 requirements</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"><span class='comment'>** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='comment'>** GNU General Public License Usage</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>** Alternatively, this file may be used under the terms of the GNU</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"><span class='comment'>** General Public License version 2.0 or (at your option) the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>** Public license version 3 or any later version approved by the KDE Free</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='comment'>** Qt Foundation. The licenses are as published by the Free Software</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>** included in the packaging of this file. Please review the following</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='comment'>** information to ensure the GNU General Public License requirements will</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>** be met: https://www.gnu.org/licenses/gpl-2.0.html and</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='comment'>** https://www.gnu.org/licenses/gpl-3.0.html.</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>** $QT_END_LICENSE$</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='comment'>**</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>****************************************************************************/</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#ifndef QTESTCASE_H</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#define QTESTCASE_H</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;QtTest/qttestglobal.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include &lt;QtCore/qstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include &lt;QtCore/qnamespace.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include &lt;QtCore/qmetatype.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include &lt;QtCore/qmetaobject.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include &lt;QtCore/qsharedpointer.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include &lt;QtCore/qtemporarydir.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='directive'>#include &lt;string.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='directive'>#ifndef QT_NO_EXCEPTIONS</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='directive'># include &lt;exception&gt;</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='directive'>#endif // QT_NO_EXCEPTIONS</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">QT_BEGIN_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"><span class='keyword'>class</span> QRegularExpression;</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='directive'>#define <span class='macro'>QVERIFY(statement)<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(statement), "statement"<br>, "", "/usr/lib64/qt5/include/QtTest/qtestcase.h", 62)) return<br>;} while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='directive'>if (!QTest::qVerify(static_cast&lt;bool&gt;(statement), #statement, "", <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>64</span></span>))\</span></td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"><span class='directive'>#define <span class='macro'>QFAIL(message)<span class='expansion'>do { QTest::qFail(message, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 68); return;} while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> <span class='directive'>QTest::qFail(message, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>70</span></span>);\</span></td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"><span class='directive'>#define <span class='macro'>QVERIFY2(statement, description)<span class='expansion'>do { if (statement) { if (!QTest::qVerify(true, "statement", (<br>description), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 74<br>)) return; } else { if (!QTest::qVerify(false, "statement", (<br>description), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 74<br>)) return; }} while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> <span class='directive'>if (statement) {\</span></td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='directive'>if (!QTest::qVerify(true, #statement, (description), <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>77</span></span>))\</span></td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='directive'>} else {\</span></td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='directive'>if (!QTest::qVerify(false, #statement, (description), <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>80</span></span>))\</span></td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='directive'>}\</span></td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='directive'>#define <span class='macro'>QCOMPARE(actual, expected)<span class='expansion'>do { if (!QTest::qCompare(actual, expected, "actual", "expected"<br>, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 85)) return;} while<br> (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='directive'>if (!QTest::qCompare(actual, expected, #actual, #expected, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>87</span></span>))\</span></td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"><span class='directive'>#ifndef QT_NO_EXCEPTIONS</span></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"><span class='directive'># define <span class='macro'>QVERIFY_EXCEPTION_THROWN(expression, exceptiontype)<span class='expansion'>do { try { try { expression; QTest::qFail("Expected exception of type "<br> "exceptiontype" " to be thrown" " but no exception caught", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 94); return; } catch (const exceptiontype &amp;) { } } catch<br> (const std::exception &amp;e) { QByteArray msg = QByteArray(<br>) + "Expected exception of type " "exceptiontype" " to be thrown but std::exception caught with message: "<br> + e.what(); QTest::qFail(msg.constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 94); return; } catch (...) { QTest::qFail("Expected exception of type "<br> "exceptiontype" " to be thrown" " but unknown exception caught"<br>, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 94); return; }<br> } while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='directive'><span class='macro'>QT_TRY<span class='expansion'>try</span></span> {\</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='directive'><span class='macro'>QT_TRY<span class='expansion'>try</span></span> {\</span></td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='directive'>expression;\</span></td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='directive'>QTest::qFail("Expected exception of type " #exceptiontype " to be thrown" \</span></td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='directive'>" but no exception caught", <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>100</span></span>);\</span></td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='directive'>} <span class='macro'>QT_CATCH (const exceptiontype &amp;)<span class='expansion'>catch (const exceptiontype &amp;)</span></span> {\</span></td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> <span class='directive'>}\</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='directive'>} <span class='macro'>QT_CATCH (const std::exception &amp;e)<span class='expansion'>catch (const std::exception &amp;e)</span></span> {\</span></td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='directive'>QByteArray msg = QByteArray() + "Expected exception of type " #exceptiontype \</span></td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> <span class='directive'>" to be thrown but std::exception caught with message: " + e.what(); \</span></td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='directive'>QTest::qFail(msg.constData(), <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>107</span></span>);\</span></td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='directive'>} <span class='macro'>QT_CATCH (...)<span class='expansion'>catch (...)</span></span> {\</span></td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> <span class='directive'>QTest::qFail("Expected exception of type " #exceptiontype " to be thrown" \</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> <span class='directive'>" but unknown exception caught", <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>111</span></span>);\</span></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='directive'>}\</span></td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"><span class='directive'>#else // QT_NO_EXCEPTIONS</span></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='comment'>* The expression passed to the macro should throw an exception and we can't</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> <span class='comment'>* catch it because Qt has been compiled without exception support. We can't</span></td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='comment'>* skip the expression because it may have side effects and must be executed.</span></td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> <span class='comment'>* So, users must use Qt with exception support enabled if they use exceptions</span></td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='comment'>* in their code.</span></td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"><span class='directive'># define <span class='macro'>QVERIFY_EXCEPTION_THROWN(expression, exceptiontype)<span class='expansion'>do { try { try { expression; QTest::qFail("Expected exception of type "<br> "exceptiontype" " to be thrown" " but no exception caught", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 125); return; } catch (const exceptiontype &amp;) { } } catch<br> (const std::exception &amp;e) { QByteArray msg = QByteArray(<br>) + "Expected exception of type " "exceptiontype" " to be thrown but std::exception caught with message: "<br> + e.what(); QTest::qFail(msg.constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 125); return; } catch (...) { QTest::qFail("Expected exception of type "<br> "exceptiontype" " to be thrown" " but unknown exception caught"<br>, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 125); return; }<br> } while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='directive'><span class='macro'>Q_STATIC_ASSERT_X(false, "Support of exceptions is disabled")<span class='expansion'>static_assert(bool(false), "Support of exceptions is disabled"<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='directive'>#endif // !QT_NO_EXCEPTIONS</span></td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_LOOP_IMPL(expr, timeoutValue, step)<span class='expansion'>if (!(expr)) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; timeoutValue &amp;&amp; !(expr); qt_test_i += step) { QTest<br>::qWait(step); }</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='directive'>if (!(expr)) { \</span></td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='directive'>QTest::qWait(0); \</span></td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> <span class='directive'>int qt_test_i = 0; \</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> <span class='directive'>for (; qt_test_i &lt; timeoutValue &amp;&amp; !(expr); qt_test_i += step) { \</span></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='directive'>QTest::qWait(step); \</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_TIMEOUT_DEBUG_IMPL(expr, timeoutValue, step)<span class='expansion'>if (!(expr)) { if (!((expr))) { QTest::qWait(0); } int qt_test_i<br> = 0; for (; qt_test_i &lt; (2 * timeoutValue) &amp;&amp; !((<br>expr)); qt_test_i += step) { QTest::qWait(step); }; if (expr)<br> { 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."<br>); msg = msg.arg(QString::fromUtf8("expr")).arg(timeoutValue)<br>.arg(timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate::<br>asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 140); return;} while (false); } }</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='directive'>if (!(expr)) { \</span></td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='directive'><span class='macro'>QTRY_LOOP_IMPL((expr), (2 * timeoutValue), step)<span class='expansion'>if (!((expr))) { QTest::qWait(0); } int qt_test_i = 0; for (;<br> qt_test_i &lt; (2 * timeoutValue) &amp;&amp; !((expr)); qt_test_i<br> += step) { QTest::qWait(step); }</span></span>;\</span></td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='directive'>if (expr) { \</span></td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='directive'>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."); \</span></td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> <span class='directive'>msg = msg.arg(QString::fromUtf8(#expr)).arg(timeoutValue).arg(timeoutValue + qt_test_i); \</span></td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='directive'><span class='macro'>QFAIL(qPrintable(msg))<span class='expansion'>do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData<br>(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 146); return<br>;} while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='directive'>} \</span></td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='directive'>}</span></td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"><span class='comment'>// Ideally we'd use qWaitFor instead of QTRY_LOOP_IMPL, but due</span></td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"><span class='comment'>// to a compiler bug on MSVC &lt; 2017 we can't (see QTBUG-59096)</span></td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_IMPL(expr, timeout)<span class='expansion'>const int qt_test_step = timeout &lt; 350 ? timeout / 7 + 1 :<br> 50; const int qt_test_timeoutValue = timeout; if (!((expr)))<br> { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt;<br> qt_test_timeoutValue &amp;&amp; !((expr)); qt_test_i += qt_test_step<br>) { QTest::qWait(qt_test_step); }; if (!((expr))) { if (!(((expr<br>)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((expr))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if ((expr)<br>) { 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."<br>); msg = msg.arg(QString::fromUtf8("(expr)")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 152); return;} while (false); } }</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='directive'>const int qt_test_step = timeout &lt; 350 ? timeout / 7 + 1 : 50; \</span></td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='directive'>const int qt_test_timeoutValue = timeout; \</span></td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='directive'><span class='macro'>QTRY_LOOP_IMPL((expr), qt_test_timeoutValue, qt_test_step)<span class='expansion'>if (!((expr))) { QTest::qWait(0); } int qt_test_i = 0; for (;<br> qt_test_i &lt; qt_test_timeoutValue &amp;&amp; !((expr)); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='directive'><span class='macro'>QTRY_TIMEOUT_DEBUG_IMPL((expr), qt_test_timeoutValue, qt_test_step)<span class='expansion'>if (!((expr))) { if (!(((expr)))) { QTest::qWait(0); } int qt_test_i<br> = 0; for (; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp;<br> !(((expr))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step<br>); }; 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."<br>); msg = msg.arg(QString::fromUtf8("(expr)")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 156); return;} while (false); } }</span></span></span>\</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"><span class='comment'>// Will try to wait for the expression to become true while allowing event processing</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_VERIFY_WITH_TIMEOUT(expr, timeout)<span class='expansion'>do { const int qt_test_step = timeout &lt; 350 ? timeout / 7 +<br> 1 : 50; const int qt_test_timeoutValue = timeout; if (!(((expr<br>)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; qt_test_timeoutValue &amp;&amp; !(((expr))); qt_test_i +=<br> qt_test_step) { QTest::qWait(qt_test_step); }; if (!(((expr)<br>))) { if (!((((expr))))) { QTest::qWait(0); } int qt_test_i =<br> 0; for (; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp;<br> !((((expr)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step<br>); }; 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."<br>); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 159); return;} while (false); } }; do { if (!QTest::qVerify<br>(static_cast&lt;bool&gt;(expr), "expr", "", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 159)) return;} while (false); } while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"><span class='directive'>do { \</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='directive'><span class='macro'>QTRY_IMPL((expr), timeout)<span class='expansion'>const int qt_test_step = timeout &lt; 350 ? timeout / 7 + 1 :<br> 50; const int qt_test_timeoutValue = timeout; if (!(((expr))<br>)) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt;<br> qt_test_timeoutValue &amp;&amp; !(((expr))); qt_test_i += qt_test_step<br>) { QTest::qWait(qt_test_step); }; if (!(((expr)))) { if (!((<br>((expr))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !((((expr)))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if (((expr<br>))) { 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."<br>); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 161); return;} while (false); } }</span></span>;\</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='directive'><span class='macro'>QVERIFY(expr)<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(expr), "expr"<br>, "", "/usr/lib64/qt5/include/QtTest/qtestcase.h", 162)) return<br>;} while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_VERIFY(expr)<span class='expansion'>do { const int qt_test_step = 5000 &lt; 350 ? 5000 / 7 + 1 : 50<br>; const int qt_test_timeoutValue = 5000; if (!((((expr))))) {<br> QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt; qt_test_timeoutValue<br> &amp;&amp; !((((expr)))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if (!((((expr))))) { if (!(((((expr<br>)))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((((expr))))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if ((((expr<br>)))) { 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."<br>); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 165); return;} while (false); } }; do { if (!QTest::qVerify<br>(static_cast&lt;bool&gt;((expr)), "(expr)", "", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 165)) return;} while (false); } while (false)</span></span> <span class='macro'>QTRY_VERIFY_WITH_TIMEOUT((expr), 5000)<span class='expansion'>do { const int qt_test_step = 5000 &lt; 350 ? 5000 / 7 + 1 : 50<br>; const int qt_test_timeoutValue = 5000; if (!((((expr))))) {<br> QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt; qt_test_timeoutValue<br> &amp;&amp; !((((expr)))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if (!((((expr))))) { if (!(((((expr<br>)))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((((expr))))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if ((((expr<br>)))) { 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."<br>); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 165); return;} while (false); } }; do { if (!QTest::qVerify<br>(static_cast&lt;bool&gt;((expr)), "(expr)", "", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 165)) return;} while (false); } while (false)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"><span class='comment'>// Will try to wait for the expression to become true while allowing event processing</span></td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_VERIFY2_WITH_TIMEOUT(expr, messageExpression, timeout)<span class='expansion'>do { const int qt_test_step = timeout &lt; 350 ? timeout / 7 +<br> 1 : 50; const int qt_test_timeoutValue = timeout; if (!(((expr<br>)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; qt_test_timeoutValue &amp;&amp; !(((expr))); qt_test_i +=<br> qt_test_step) { QTest::qWait(qt_test_step); }; if (!(((expr)<br>))) { if (!((((expr))))) { QTest::qWait(0); } int qt_test_i =<br> 0; for (; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp;<br> !((((expr)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step<br>); }; 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."<br>); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 168); return;} while (false); } }; do { if (expr) { if (!QTest<br>::qVerify(true, "expr", (messageExpression), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 168)) return; } else { if (!QTest::qVerify(false, "expr", (<br>messageExpression), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 168)) return; }} while (false); } while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"><span class='directive'>do { \</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='directive'><span class='macro'>QTRY_IMPL((expr), timeout)<span class='expansion'>const int qt_test_step = timeout &lt; 350 ? timeout / 7 + 1 :<br> 50; const int qt_test_timeoutValue = timeout; if (!(((expr))<br>)) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt;<br> qt_test_timeoutValue &amp;&amp; !(((expr))); qt_test_i += qt_test_step<br>) { QTest::qWait(qt_test_step); }; if (!(((expr)))) { if (!((<br>((expr))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !((((expr)))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if (((expr<br>))) { 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."<br>); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 170); return;} while (false); } }</span></span>;\</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='directive'><span class='macro'>QVERIFY2(expr, messageExpression)<span class='expansion'>do { if (expr) { if (!QTest::qVerify(true, "expr", (messageExpression<br>), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 171)) return;<br> } else { if (!QTest::qVerify(false, "expr", (messageExpression<br>), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 171)) return;<br> }} while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_VERIFY2(expr, messageExpression)<span class='expansion'>do { const int qt_test_step = 5000 &lt; 350 ? 5000 / 7 + 1 : 50<br>; const int qt_test_timeoutValue = 5000; if (!((((expr))))) {<br> QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt; qt_test_timeoutValue<br> &amp;&amp; !((((expr)))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if (!((((expr))))) { if (!(((((expr<br>)))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((((expr))))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if ((((expr<br>)))) { 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."<br>); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 174); return;} while (false); } }; do { if ((expr)) { if (!<br>QTest::qVerify(true, "(expr)", ((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 174)) return; } else { if (!QTest::qVerify(false, "(expr)",<br> ((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 174)) return; }} while (false); } while (false)</span></span> <span class='macro'>QTRY_VERIFY2_WITH_TIMEOUT((expr), (messageExpression), 5000)<span class='expansion'>do { const int qt_test_step = 5000 &lt; 350 ? 5000 / 7 + 1 : 50<br>; const int qt_test_timeoutValue = 5000; if (!((((expr))))) {<br> QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i &lt; qt_test_timeoutValue<br> &amp;&amp; !((((expr)))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if (!((((expr))))) { if (!(((((expr<br>)))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((((expr))))); qt_test_i<br> += qt_test_step) { QTest::qWait(qt_test_step); }; if ((((expr<br>)))) { 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."<br>); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue<br>).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate<br>::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 174); return;} while (false); } }; do { if ((expr)) { if (!<br>QTest::qVerify(true, "(expr)", ((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 174)) return; } else { if (!QTest::qVerify(false, "(expr)",<br> ((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 174)) return; }} while (false); } while (false)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"><span class='comment'>// Will try to wait for the comparison to become successful while allowing event processing</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_COMPARE_WITH_TIMEOUT(expr, expected, timeout)<span class='expansion'>do { const int qt_test_step = timeout &lt; 350 ? timeout / 7 +<br> 1 : 50; const int qt_test_timeoutValue = timeout; if (!((((expr<br>) == (expected))))) { QTest::qWait(0); } int qt_test_i = 0; for<br> (; qt_test_i &lt; qt_test_timeoutValue &amp;&amp; !((((expr)<br> == (expected)))); qt_test_i += qt_test_step) { QTest::qWait(<br>qt_test_step); }; if (!((((expr) == (expected))))) { if (!(((<br>((expr) == (expected)))))) { QTest::qWait(0); } int qt_test_i<br> = 0; for (; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp;<br> !(((((expr) == (expected))))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if ((((expr) == (expected)))) { QString<br> 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."<br>); msg = msg.arg(QString::fromUtf8("(((expr) == (expected)))"<br>)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i<br>); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData<br>(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 177); return<br>;} while (false); } }; do { if (!QTest::qCompare((expr), expected<br>, "(expr)", "expected", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 177)) return;} while (false); } while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"><span class='directive'>do { \</span></td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='directive'><span class='macro'>QTRY_IMPL(((expr) == (expected)), timeout)<span class='expansion'>const int qt_test_step = timeout &lt; 350 ? timeout / 7 + 1 :<br> 50; const int qt_test_timeoutValue = timeout; if (!((((expr)<br> == (expected))))) { QTest::qWait(0); } int qt_test_i = 0; for<br> (; qt_test_i &lt; qt_test_timeoutValue &amp;&amp; !((((expr)<br> == (expected)))); qt_test_i += qt_test_step) { QTest::qWait(<br>qt_test_step); }; if (!((((expr) == (expected))))) { if (!(((<br>((expr) == (expected)))))) { QTest::qWait(0); } int qt_test_i<br> = 0; for (; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp;<br> !(((((expr) == (expected))))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if ((((expr) == (expected)))) { QString<br> 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."<br>); msg = msg.arg(QString::fromUtf8("(((expr) == (expected)))"<br>)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i<br>); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData<br>(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 179); return<br>;} while (false); } }</span></span>;\</span></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='directive'><span class='macro'>QCOMPARE((expr), expected)<span class='expansion'>do { if (!QTest::qCompare((expr), expected, "(expr)", "expected"<br>, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 180)) return;}<br> while (false)</span></span>; \</span></td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"><span class='directive'>#define <span class='macro'>QTRY_COMPARE(expr, expected)<span class='expansion'>do { const int qt_test_step = 5000 &lt; 350 ? 5000 / 7 + 1 : 50<br>; const int qt_test_timeoutValue = 5000; if (!(((((expr)) == (<br>expected))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; qt_test_timeoutValue &amp;&amp; !(((((expr)) == (expected<br>)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step)<br>; }; if (!(((((expr)) == (expected))))) { if (!((((((expr)) ==<br> (expected)))))) { QTest::qWait(0); } int qt_test_i = 0; for (<br>; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((((<br>(expr)) == (expected))))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if (((((expr)) == (expected)))) { QString<br> 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."<br>); msg = msg.arg(QString::fromUtf8("((((expr)) == (expected)))"<br>)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i<br>); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData<br>(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 183); return<br>;} while (false); } }; do { if (!QTest::qCompare(((expr)), expected<br>, "((expr))", "expected", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 183)) return;} while (false); } while (false)</span></span> <span class='macro'>QTRY_COMPARE_WITH_TIMEOUT((expr), expected, 5000)<span class='expansion'>do { const int qt_test_step = 5000 &lt; 350 ? 5000 / 7 + 1 : 50<br>; const int qt_test_timeoutValue = 5000; if (!(((((expr)) == (<br>expected))))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i<br> &lt; qt_test_timeoutValue &amp;&amp; !(((((expr)) == (expected<br>)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step)<br>; }; if (!(((((expr)) == (expected))))) { if (!((((((expr)) ==<br> (expected)))))) { QTest::qWait(0); } int qt_test_i = 0; for (<br>; qt_test_i &lt; (2 * qt_test_timeoutValue) &amp;&amp; !(((((<br>(expr)) == (expected))))); qt_test_i += qt_test_step) { QTest<br>::qWait(qt_test_step); }; if (((((expr)) == (expected)))) { QString<br> 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."<br>); msg = msg.arg(QString::fromUtf8("((((expr)) == (expected)))"<br>)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i<br>); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData<br>(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 183); return<br>;} while (false); } }; do { if (!QTest::qCompare(((expr)), expected<br>, "((expr))", "expected", "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 183)) return;} while (false); } while (false)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='directive'>#define <span class='macro'>QSKIP_INTERNAL(statement)<span class='expansion'>do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 185); return;} while (false)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='directive'>QTest::qSkip(statement, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>187</span></span>);\</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"><span class='directive'>#ifdef Q_COMPILER_VARIADIC_MACROS</span></td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"><span class='directive'>#define <span class='macro'>QSKIP(statement, ...)<span class='expansion'>do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 193); return;} while (false)</span></span> <span class='macro'>QSKIP_INTERNAL(statement)<span class='expansion'>do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 193); return;} while (false)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"><span class='directive'>#define <span class='macro'>QSKIP(statement)<span class='expansion'>do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 197); return;} while (false)</span></span> <span class='macro'>QSKIP_INTERNAL(statement)<span class='expansion'>do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 197); return;} while (false)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"><span class='directive'>#define <span class='macro'>QEXPECT_FAIL(dataIndex, comment, mode)<span class='expansion'>do { if (!QTest::qExpectFail(dataIndex, comment, QTest::mode,<br> "/usr/lib64/qt5/include/QtTest/qtestcase.h", 201)) return;} while<br> (false)</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='directive'>if (!QTest::qExpectFail(dataIndex, comment, QTest::mode, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>203</span></span>))\</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"><span class='directive'>#define <span class='macro'>QFETCH(Type, name)<span class='expansion'>Type name = *static_cast&lt;Type *&gt;(QTest::qData("name", ::<br>qMetaTypeId&lt;typename std::remove_cv&lt;Type &gt;::type&gt;<br>()))</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='directive'>Type name = *static_cast&lt;Type *&gt;(QTest::qData(#name, ::qMetaTypeId&lt;typename std::remove_cv&lt;Type &gt;::type&gt;()))</span></td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='directive'>#define <span class='macro'>QFETCH_GLOBAL(Type, name)<span class='expansion'>Type name = *static_cast&lt;Type *&gt;(QTest::qGlobalData("name"<br>, ::qMetaTypeId&lt;typename std::remove_cv&lt;Type &gt;::type<br>&gt;()))</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='directive'>Type name = *static_cast&lt;Type *&gt;(QTest::qGlobalData(#name, ::qMetaTypeId&lt;typename std::remove_cv&lt;Type &gt;::type&gt;()))</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"><span class='directive'>#define <span class='macro'>QTEST(actual, testElement)<span class='expansion'>do { if (!QTest::qTest(actual, testElement, "actual", "testElement"<br>, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 213)) return;}<br> while (false)</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"><span class='directive'>do {\</span></td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> <span class='directive'>if (!QTest::qTest(actual, testElement, #actual, #testElement, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>215</span></span>))\</span></td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='directive'>return;\</span></td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"><span class='directive'>} while (false)</span></td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"><span class='directive'>#define <span class='macro'>QWARN(msg)<span class='expansion'>QTest::qWarn(msg, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 219)</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='directive'>QTest::qWarn(msg, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>220</span></span>)</span></td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"><span class='directive'>#ifdef <span class='macro'>QT_TESTCASE_BUILDDIR<span class='expansion'>"/mnt/devel/GIT/6.x/build.scan"</span></span></span></td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"><span class='directive'># define <span class='macro'>QFINDTESTDATA(basepath)<span class='expansion'>QTest::qFindTestData(basepath, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 223, "/mnt/devel/GIT/6.x/build.scan")</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> <span class='directive'>QTest::qFindTestData(basepath, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>224</span></span>, <span class='macro'>QT_TESTCASE_BUILDDIR<span class='expansion'>"/mnt/devel/GIT/6.x/build.scan"</span></span>)</span></td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"><span class='directive'># define <span class='macro'>QFINDTESTDATA(basepath)<span class='expansion'>QTest::qFindTestData(basepath, "/usr/lib64/qt5/include/QtTest/qtestcase.h"<br>, 226, "/mnt/devel/GIT/6.x/build.scan")</span></span>\</span></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='directive'>QTest::qFindTestData(basepath, <span class='macro'>__FILE__<span class='expansion'>"/usr/lib64/qt5/include/QtTest/qtestcase.h"</span></span>, <span class='macro'>__LINE__<span class='expansion'>227</span></span>)</span></td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"><span class='directive'># define <span class='macro'>QEXTRACTTESTDATA(resourcePath)<span class='expansion'>QTest::qExtractTestData(resourcePath)</span></span> \</span></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='directive'>QTest::qExtractTestData(resourcePath)</span></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"><span class='keyword'>class</span> QObject;</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"><span class='keyword'>class</span> QTestData;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"><span class='directive'>#define QTEST_COMPARE_DECL(KLASS)\</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='directive'>template&lt;&gt; <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> char *toString&lt;KLASS &gt;(const KLASS &amp;);</span></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"><span class='keyword'>namespace</span> QTest</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>namespace</span> Internal {</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>template</span>&lt;<span class='keyword'>typename</span> T&gt; <span class='comment'>// Output registered enums</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>typename</span> std::enable_if&lt;QtPrivate::IsQEnumHelper&lt;T&gt;::Value, <span class='keyword'>char</span>*&gt;::type toString(T e)</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> QMetaEnum me = QMetaEnum::fromType&lt;T&gt;();</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> <span class='keyword'>return</span> qstrdup(me.valueToKey(<span class='keyword'>int</span>(e))); <span class='comment'>// int cast is necessary to support enum classes</span></td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt; <span class='comment'>// Fallback</span></td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>typename</span> std::enable_if&lt;!QtPrivate::IsQEnumHelper&lt;T&gt;::Value, <span class='keyword'>char</span>*&gt;::type toString(<span class='keyword'>const</span> T &amp;)</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>template</span>&lt;<span class='keyword'>typename</span> F&gt; <span class='comment'>// Output QFlags of registered enumerations</span></td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>typename</span> std::enable_if&lt;QtPrivate::IsQEnumHelper&lt;F&gt;::Value, <span class='keyword'>char</span>*&gt;::type toString(QFlags&lt;F&gt; f)</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>const</span> QMetaEnum me = QMetaEnum::fromType&lt;F&gt;();</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> <span class='keyword'>return</span> qstrdup(me.valueToKeys(<span class='keyword'>int</span>(f)).constData());</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> F&gt; <span class='comment'>// Fallback: Output hex value</span></td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>typename</span> std::enable_if&lt;!QtPrivate::IsQEnumHelper&lt;F&gt;::Value, <span class='keyword'>char</span>*&gt;::type toString(QFlags&lt;F&gt; f)</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='keyword'>const</span> size_t space = 3 + 2 * <span class='keyword'>sizeof</span>(<span class='keyword'>unsigned</span>); <span class='comment'>// 2 for 0x, two hex digits per byte, 1 for '\0'</span></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='keyword'>char</span> *msg = <span class="mrange"><span class='keyword'>new</span></span> <span class='keyword'>char</span>[space];</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> qsnprintf(msg, space, <span class='string_literal'>"0x%x"</span>, <span class='keyword'>unsigned</span>(f));</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='keyword'>return</span> msg;</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> } <span class='comment'>// namespace Internal</span></td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='keyword'>template</span>&lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>char</span> *toString(<span class='keyword'>const</span> T &amp;t)</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='keyword'>return</span> <span class="mrange"><span class="mrange">Internal::toString(t)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:16ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Calling 'toString&lt;Digikam::DatabaseFields::ImagesField&gt;'</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgEvent" style="margin-left:16ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Returned allocated memory</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T1, <span class='keyword'>typename</span> T2&gt;</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>char</span> *toString(<span class='keyword'>const</span> QPair&lt;T1, T2&gt; &amp;pair);</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T1, <span class='keyword'>typename</span> T2&gt;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>char</span> *toString(<span class='keyword'>const</span> std::pair&lt;T1, T2&gt; &amp;pair);</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>class</span>... Types&gt;</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>char</span> *toString(<span class='keyword'>const</span> std::tuple&lt;Types...&gt; &amp;tuple);</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> *toHexRepresentation(<span class='keyword'>const</span> <span class='keyword'>char</span> *ba, <span class='keyword'>int</span> length);</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> *toPrettyCString(<span class='keyword'>const</span> <span class='keyword'>char</span> *unicode, <span class='keyword'>int</span> length);</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> *toPrettyUnicode(QStringView string);</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> *toString(<span class='keyword'>const</span> <span class='keyword'>char</span> *);</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> *toString(<span class='keyword'>const</span> <span class='keyword'>void</span> *);</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> qInit(QObject *testObject, <span class='keyword'>int</span> argc = 0, <span class='keyword'>char</span> **argv = <span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>int</span> qRun();</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> qCleanup();</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>int</span> qExec(QObject *testObject, <span class='keyword'>int</span> argc = 0, <span class='keyword'>char</span> **argv = <span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>int</span> qExec(QObject *testObject, <span class='keyword'>const</span> QStringList &amp;arguments);</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> setMainSourcePath(<span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>const</span> <span class='keyword'>char</span> *builddir = <span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> qVerify(<span class='keyword'>bool</span> statement, <span class='keyword'>const</span> <span class='keyword'>char</span> *statementStr, <span class='keyword'>const</span> <span class='keyword'>char</span> *description,</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> qFail(<span class='keyword'>const</span> <span class='keyword'>char</span> *statementStr, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> qSkip(<span class='keyword'>const</span> <span class='keyword'>char</span> *message, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> qExpectFail(<span class='keyword'>const</span> <span class='keyword'>char</span> *dataIndex, <span class='keyword'>const</span> <span class='keyword'>char</span> *comment, TestFailMode mode,</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> qWarn(<span class='keyword'>const</span> <span class='keyword'>char</span> *message, <span class='keyword'>const</span> <span class='keyword'>char</span> *file = <span class='keyword'>nullptr</span>, <span class='keyword'>int</span> line = 0);</td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> ignoreMessage(QtMsgType type, <span class='keyword'>const</span> <span class='keyword'>char</span> *message);</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"><span class='directive'>#if <span class='macro'>QT_CONFIG(regularexpression)<span class='expansion'>(1/1 == 1)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> ignoreMessage(QtMsgType type, <span class='keyword'>const</span> QRegularExpression &amp;messagePattern);</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"><span class='directive'>#if <span class='macro'>QT_CONFIG(temporaryfile)<span class='expansion'>(1/1 == 1)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QSharedPointer&lt;QTemporaryDir&gt; qExtractTestData(<span class='keyword'>const</span> QString &amp;dirName);</td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QString qFindTestData(<span class='keyword'>const</span> <span class='keyword'>char</span>* basepath, <span class='keyword'>const</span> <span class='keyword'>char</span>* file = <span class='keyword'>nullptr</span>, <span class='keyword'>int</span> line = 0, <span class='keyword'>const</span> <span class='keyword'>char</span>* builddir = <span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QString qFindTestData(<span class='keyword'>const</span> QString&amp; basepath, <span class='keyword'>const</span> <span class='keyword'>char</span>* file = <span class='keyword'>nullptr</span>, <span class='keyword'>int</span> line = 0, <span class='keyword'>const</span> <span class='keyword'>char</span>* builddir = <span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> *qData(<span class='keyword'>const</span> <span class='keyword'>char</span> *tagName, <span class='keyword'>int</span> typeId);</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> *qGlobalData(<span class='keyword'>const</span> <span class='keyword'>char</span> *tagName, <span class='keyword'>int</span> typeId);</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> *qElementData(<span class='keyword'>const</span> <span class='keyword'>char</span> *elementName, <span class='keyword'>int</span> metaTypeId);</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QObject *testObject();</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>const</span> <span class='keyword'>char</span> *currentAppName();</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>const</span> <span class='keyword'>char</span> *currentTestFunction();</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>const</span> <span class='keyword'>char</span> *currentDataTag();</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> currentTestFailed();</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> Qt::Key asciiToKey(<span class='keyword'>char</span> ascii);</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> keyToAscii(Qt::Key key);</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> compare_helper(<span class='keyword'>bool</span> success, <span class='keyword'>const</span> <span class='keyword'>char</span> *failureMsg,</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> <span class='keyword'>char</span> *val1, <span class='keyword'>char</span> *val2,</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> qSleep(<span class='keyword'>int</span> ms);</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>void</span> addColumnInternal(<span class='keyword'>int</span> id, <span class='keyword'>const</span> <span class='keyword'>char</span> *name);</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>void</span> addColumn(<span class='keyword'>const</span> <span class='keyword'>char</span> *name, T * = <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> <span class='keyword'>typedef</span> std::is_same&lt;T, <span class='keyword'>const</span> <span class='keyword'>char</span>*&gt; QIsSameTConstChar;</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> <span class='macro'>Q_STATIC_ASSERT_X(!QIsSameTConstChar::value, <span class='string_literal'>"const char* is not allowed as a test data format."</span>)<span class='expansion'>static_assert(bool(!QIsSameTConstChar::value), "const char* is not allowed as a test data format."<br>)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> addColumnInternal(qMetaTypeId&lt;T&gt;(), name);</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QTestData &amp;newRow(<span class='keyword'>const</span> <span class='keyword'>char</span> *dataTag);</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> QTestData &amp;addRow(<span class='keyword'>const</span> <span class='keyword'>char</span> *format, ...) <span class='macro'>Q_ATTRIBUTE_FORMAT_PRINTF(1, 2)<span class='expansion'>__attribute__((format(printf, (1), (2))))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"><span class='directive'>#if <span class='macro'>QT_VERSION<span class='expansion'>((5&lt;&lt;16)|(12&lt;&lt;8)|(2))</span></span> &lt; <span class='macro'>QT_VERSION_CHECK(6, 0, 0)<span class='expansion'>((6&lt;&lt;16)|(0&lt;&lt;8)|(0))</span></span></span></td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='comment'>// kept after adding implementation of &lt;T1, T2&gt; out of paranoia:</span></td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(T <span class='keyword'>const</span> &amp;t1, T <span class='keyword'>const</span> &amp;t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='keyword'>return</span> compare_helper(t1 == t2, <span class='string_literal'>"Compared values are not the same"</span>,</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Potential memory leak</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> toString(t1), <span class="mrange"><span class="mrange">toString(t2)</span></span>, actual, expected, file, line);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:45ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Calling 'toString&lt;QFlags&lt;Digikam::DatabaseFields::ImagesField&gt;&gt;'</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:45ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Returned allocated memory</td><td><div class="PathNav"><a href="#EndPath" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>float</span> <span class='keyword'>const</span> &amp;t1, <span class='keyword'>float</span> <span class='keyword'>const</span> &amp;t2,</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>double</span> <span class='keyword'>const</span> &amp;t1, <span class='keyword'>double</span> <span class='keyword'>const</span> &amp;t2,</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> compare_ptr_helper(<span class='keyword'>const</span> <span class='keyword'>volatile</span> <span class='keyword'>void</span> *t1, <span class='keyword'>const</span> <span class='keyword'>volatile</span> <span class='keyword'>void</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> <span class='keyword'>return</span> compare_helper(t1 == t2, <span class='string_literal'>"Compared pointers are not the same"</span>,</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> toString(t1), toString(t2), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> compare_ptr_helper(<span class='keyword'>const</span> <span class='keyword'>volatile</span> <span class='keyword'>void</span> *t1, std::nullptr_t, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> <span class='keyword'>return</span> compare_helper(t1 == <span class='keyword'>nullptr</span>, <span class='string_literal'>"Compared pointers are not the same"</span>,</td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> toString(t1), toString(<span class='keyword'>nullptr</span>), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> compare_ptr_helper(std::nullptr_t, <span class='keyword'>const</span> <span class='keyword'>volatile</span> <span class='keyword'>void</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> <span class='keyword'>return</span> compare_helper(<span class='keyword'>nullptr</span> == t2, <span class='string_literal'>"Compared pointers are not the same"</span>,</td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> toString(<span class='keyword'>nullptr</span>), toString(t2), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>bool</span> compare_string_helper(<span class='keyword'>const</span> <span class='keyword'>char</span> *t1, <span class='keyword'>const</span> <span class='keyword'>char</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line);</td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> <span class='macro'>Q_TESTLIB_EXPORT<span class='expansion'>__attribute__((visibility("default")))</span></span> <span class='keyword'>char</span> *formatString(<span class='keyword'>const</span> <span class='keyword'>char</span> *prefix, <span class='keyword'>const</span> <span class='keyword'>char</span> *suffix, size_t numArguments, ...);</td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"><span class='directive'>#ifndef Q_QDOC</span></td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>short</span>)</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> QTEST_COMPARE_DECL(ushort)</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>int</span>)</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> QTEST_COMPARE_DECL(uint)</td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>long</span>)</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> QTEST_COMPARE_DECL(ulong)</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> QTEST_COMPARE_DECL(qint64)</td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> QTEST_COMPARE_DECL(quint64)</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>float</span>)</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>double</span>)</td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>char</span>)</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>signed</span> <span class='keyword'>char</span>)</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>unsigned</span> <span class='keyword'>char</span>)</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> QTEST_COMPARE_DECL(<span class='keyword'>bool</span>)</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T1, <span class='keyword'>typename</span> T2&gt;</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>const</span> T1 &amp;t1, <span class='keyword'>const</span> T2 &amp;t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> <span class='keyword'>return</span> compare_helper(t1 == t2, <span class='string_literal'>"Compared values are not the same"</span>,</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> toString(t1), toString(t2), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>double</span> <span class='keyword'>const</span> &amp;t1, <span class='keyword'>float</span> <span class='keyword'>const</span> &amp;t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> <span class='keyword'>return</span> qCompare(qreal(t1), qreal(t2), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>float</span> <span class='keyword'>const</span> &amp;t1, <span class='keyword'>double</span> <span class='keyword'>const</span> &amp;t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> <span class='keyword'>return</span> qCompare(qreal(t1), qreal(t2), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>const</span> T *t1, <span class='keyword'>const</span> T *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> <span class='keyword'>return</span> compare_ptr_helper(t1, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(T *t1, T *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> <span class='keyword'>return</span> compare_ptr_helper(t1, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(T *t1, std::nullptr_t, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> <span class='keyword'>return</span> compare_ptr_helper(t1, <span class='keyword'>nullptr</span>, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(std::nullptr_t, T *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"> <span class='keyword'>return</span> compare_ptr_helper(<span class='keyword'>nullptr</span>, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T1, <span class='keyword'>typename</span> T2&gt;</td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>const</span> T1 *t1, <span class='keyword'>const</span> T2 *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='keyword'>return</span> compare_ptr_helper(t1, <span class='keyword'>static_cast</span>&lt;<span class='keyword'>const</span> T1 *&gt;(t2), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>typename</span> T1, <span class='keyword'>typename</span> T2&gt;</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(T1 *t1, T2 *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> <span class='keyword'>return</span> compare_ptr_helper(<span class='keyword'>const_cast</span>&lt;<span class='keyword'>const</span> T1 *&gt;(t1),</td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>static_cast</span>&lt;<span class='keyword'>const</span> T1 *&gt;(<span class='keyword'>const_cast</span>&lt;<span class='keyword'>const</span> T2 *&gt;(t2)), actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>const</span> <span class='keyword'>char</span> *t1, <span class='keyword'>const</span> <span class='keyword'>char</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> <span class='keyword'>return</span> compare_string_helper(t1, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>char</span> *t1, <span class='keyword'>char</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *expected,</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> <span class='keyword'>return</span> compare_string_helper(t1, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='comment'>/* The next two overloads are for MSVC that shows problems with implicit</span></td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> <span class='comment'>conversions</span></td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>char</span> *t1, <span class='keyword'>const</span> <span class='keyword'>char</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> <span class='keyword'>return</span> compare_string_helper(t1, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qCompare(<span class='keyword'>const</span> <span class='keyword'>char</span> *t1, <span class='keyword'>char</span> *t2, <span class='keyword'>const</span> <span class='keyword'>char</span> *actual,</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> <span class='keyword'>return</span> compare_string_helper(t1, t2, actual, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> <span class='keyword'>template</span> &lt;<span class='keyword'>class</span> T&gt;</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> <span class='keyword'>inline</span> <span class='keyword'>bool</span> qTest(<span class='keyword'>const</span> T&amp; actual, <span class='keyword'>const</span> <span class='keyword'>char</span> *elementName, <span class='keyword'>const</span> <span class='keyword'>char</span> *actualStr,</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span> *expected, <span class='keyword'>const</span> <span class='keyword'>char</span> *file, <span class='keyword'>int</span> line)</td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> <span class='keyword'>return</span> qCompare(actual, *<span class='keyword'>static_cast</span>&lt;<span class='keyword'>const</span> T *&gt;(QTest::qElementData(elementName,</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> qMetaTypeId&lt;T&gt;())), actualStr, expected, file, line);</td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"><span class='directive'>#undef QTEST_COMPARE_DECL</span></td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line">QT_END_NAMESPACE</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"><span class='directive'>#endif</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-280f32.html b/static/reports/clang/master/report-9d6099.html
similarity index 99%
rename from static/reports/clang/master/report-280f32.html
rename to static/reports/clang/master/report-9d6099.html
index 5ab31d4cd..56e78a7b2 100644
--- a/static/reports/clang/master/report-280f32.html
+++ b/static/reports/clang/master/report-9d6099.html
@@ -1,720 +1,720 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'folder' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp -->
<!-- FILENAME bookmarknode.cpp -->
<!-- FUNCTIONNAME readFolder -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 4061eb66c10c16ceb484dc0d8cf6e626 -->
<!-- BUGLINE 235 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 32 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 235, column 1</a><br />Potential leak of memory pointed to by 'folder'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name bookmarknode.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 USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -I /mnt/devel/GIT/6.x/build.scan/core/utilities/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface -I /mnt/devel/GIT/6.x/build.scan/core/utilities/geolocation/geoiface/geoiface_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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/QtNetwork -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtConcurrent -I /usr/include/KF5/KI18n -I /usr/include/KF5 -I /usr/include/KF5/KConfigCore -I /usr/include/KF5/KXmlGui -I /usr/lib64/qt5/include/QtWidgets -I /usr/include/KF5/KConfigWidgets -I /usr/include/KF5/KCodecs -I /usr/include/KF5/KWidgetsAddons -I /usr/include/KF5/KConfigGui -I /usr/include/KF5/KAuth -I /usr/include/KF5/KCoreAddons -I /usr/lib64/qt5/include/QtDBus -I /usr/lib64/qt5/include/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/utilities/geolocation/geoiface -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name bookmarknode.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 USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -I /mnt/devel/GIT/6.x/build.scan/core/utilities/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface -I /mnt/devel/GIT/6.x/build.scan/core/utilities/geolocation/geoiface/geoiface_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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/QtNetwork -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtConcurrent -I /usr/include/KF5/KI18n -I /usr/include/KF5 -I /usr/include/KF5/KConfigCore -I /usr/include/KF5/KXmlGui -I /usr/lib64/qt5/include/QtWidgets -I /usr/include/KF5/KConfigWidgets -I /usr/include/KF5/KCodecs -I /usr/include/KF5/KWidgetsAddons -I /usr/include/KF5/KConfigGui -I /usr/include/KF5/KAuth -I /usr/include/KF5/KCoreAddons -I /usr/lib64/qt5/include/QtDBus -I /usr/lib64/qt5/include/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/utilities/geolocation/geoiface -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"46": 1, "47": 1, "48": 1, "49": 1, "57": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "64": 1, "65": 1, "122": 1, "123": 1, "124": 1, "126": 1, "127": 1, "129": 1, "131": 1, "132": 1, "134": 1, "137": 1, "138": 1, "139": 1, "140": 1, "149": 1, "150": 1, "151": 1, "153": 1, "161": 1, "164": 1, "165": 1, "166": 1, "167": 1, "169": 1, "171": 1, "173": 1, "174": 1, "176": 1, "178": 1, "179": 1, "180": 1, "196": 1, "197": 1, "198": 1, "200": 1, "202": 1, "203": 1, "213": 1, "214": 1, "215": 1, "217": 1, "218": 1, "220": 1, "222": 1, "224": 1, "226": 1, "227": 1, "235": 1}, "5": {"1673": 1}, "4311": {"120": 1}, "15628": {"389": 1}, "16670": {"1338": 1, "1339": 1, "1340": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2017-05-15</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a node container for GPS bookmarks</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2017-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "bookmarknode.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QFile&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QDateTime&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;klocalizedstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> BookmarkNode::Private</td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> : parent(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> type(BookmarkNode::Root)</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> BookmarkNode* parent;</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> Type type;</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> QList&lt;BookmarkNode*&gt; children;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">BookmarkNode::BookmarkNode(BookmarkNode::Type type, BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> : d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> expanded = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d-&gt;parent = parent;</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> d-&gt;type = type;</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='keyword'>if</span> (parent)</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> parent-&gt;add(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">BookmarkNode::~BookmarkNode()</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> <span class='keyword'>if</span> (d-&gt;parent)</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> d-&gt;parent-&gt;remove(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> qDeleteAll(d-&gt;children);</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> d-&gt;parent = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> d-&gt;type = BookmarkNode::Root;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>bool</span> BookmarkNode::<span class='keyword'>operator</span>==(<span class='keyword'>const</span> BookmarkNode&amp; other) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='keyword'>if</span> (url != other.url ||</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> title != other.title ||</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> desc != other.desc ||</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> expanded != other.expanded ||</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> dateAdded != other.dateAdded ||</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;type != other.d-&gt;type ||</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> d-&gt;children.count() != other.d-&gt;children.count())</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; d-&gt;children.count() ; ++i)</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='keyword'>if</span> (!((*(d-&gt;children[i])) == (*(other.d-&gt;children[i]))))</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line">BookmarkNode::Type BookmarkNode::type() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='keyword'>return</span> d-&gt;type;</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"><span class='keyword'>void</span> BookmarkNode::setType(Type type)</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;type = type;</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line">QList&lt;BookmarkNode*&gt; BookmarkNode::children() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='keyword'>return</span> d-&gt;children;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line">BookmarkNode* BookmarkNode::parent() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='keyword'>return</span> d-&gt;parent;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"><span class='keyword'>void</span> BookmarkNode::add(BookmarkNode* <span class='keyword'>const</span> child, <span class='keyword'>int</span> offset)</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='macro'>Q_ASSERT(child-&gt;d-&gt;type != Root)<span class='expansion'>((child-&gt;d-&gt;type != Root) ? static_cast&lt;void&gt;(0) :<br> qt_assert("child-&gt;d-&gt;type != Root", "/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp"<br>, 124))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='keyword'>if</span> (child-&gt;d-&gt;parent)</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> child-&gt;d-&gt;parent-&gt;remove(child);</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> child-&gt;d-&gt;parent = <span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> <span class='keyword'>if</span> (offset == -1)</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> offset = d-&gt;children.size();</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> d-&gt;children.insert(offset, child);</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"><span class='keyword'>void</span> BookmarkNode::remove(BookmarkNode* <span class='keyword'>const</span> child)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> child-&gt;d-&gt;parent = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> d-&gt;children.removeAll(child);</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"><span class='comment'>// -------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line">XbelReader::XbelReader()</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line">BookmarkNode* XbelReader::read(<span class='keyword'>const</span> QString&amp; fileName)</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> QFile file(fileName);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!file.exists()</span> || <span class="mrange">!file.open(QFile::ReadOnly)</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:27ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> root = <span class='keyword'>new</span> BookmarkNode(BookmarkNode::Root);</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> folder = <span class='keyword'>new</span> BookmarkNode(BookmarkNode::RootFolder, root);</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> folder-&gt;title = <span class='macro'>i18n(<span class='string_literal'>"Bookmark folder"</span>)<span class='expansion'>i18nd("digikam", "Bookmark folder")</span></span>;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='keyword'>return</span> root;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">read(&amp;file, <span class='keyword'>true</span>)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Calling 'XbelReader::read'</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line">BookmarkNode* XbelReader::read(QIODevice* <span class='keyword'>const</span> device, <span class='keyword'>bool</span> addRootFolder)</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> root = <span class='keyword'>new</span> BookmarkNode(BookmarkNode::Root);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> setDevice(device);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">readNextStartElement()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> QString version = attributes().value(QLatin1String(<span class='string_literal'>"version"</span>)).toString();</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">name() == QLatin1String(<span class='string_literal'>"xbel"</span>)</span> &amp;&amp;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> (<span class="mrange">version.isEmpty()</span> || version == QLatin1String(<span class='string_literal'>"1.0"</span>)))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:14ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>if</span> (addRootFolder)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> folder = <span class='keyword'>new</span> BookmarkNode(BookmarkNode::RootFolder, root);</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> folder-&gt;title = <span class='macro'>i18n(<span class='string_literal'>"Bookmark folder"</span>)<span class='expansion'>i18nd("digikam", "Bookmark folder")</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class="mrange">readXBEL(folder)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Calling 'XbelReader::readXBEL'</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> readXBEL(root);</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> raiseError(<span class='macro'>i18n(<span class='string_literal'>"The file is not an XBEL version 1.0 file."</span>)<span class='expansion'>i18nd("digikam", "The file is not an XBEL version 1.0 file.")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> <span class='keyword'>return</span> root;</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> XbelReader::readXBEL(BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class="mrange"><span class='macro'>Q_ASSERT</span>(isStartElement() &amp;&amp; name() == QLatin1String(<span class='string_literal'>"xbel"</span>))<span class='expansion'>((isStartElement() &amp;&amp; name() == QLatin1String("xbel")<br>) ? static_cast&lt;void&gt;(0) : qt_assert("isStartElement() &amp;&amp; name() == QLatin1String(\"xbel\")"<br>, "/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp"<br>, 198))</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>'?' condition is true</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>while</span> (readNextStartElement())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">name() == QLatin1String(<span class='string_literal'>"folder"</span>)</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class="mrange">readFolder(parent)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Calling 'XbelReader::readFolder'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (name() == QLatin1String(<span class='string_literal'>"bookmark"</span>))</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> readBookmarkNode(parent);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (name() == QLatin1String(<span class='string_literal'>"separator"</span>))</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> readSeparator(parent);</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> skipCurrentElement();</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"><span class='keyword'>void</span> XbelReader::readFolder(BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> <span class="mrange"><span class="mrange"><span class='macro'>Q_ASSERT</span></span>(isStartElement() &amp;&amp; name() == QLatin1String(<span class='string_literal'>"folder"</span>))<span class='expansion'>((isStartElement() &amp;&amp; name() == QLatin1String("folder"<br>)) ? static_cast&lt;void&gt;(0) : qt_assert("isStartElement() &amp;&amp; name() == QLatin1String(\"folder\")"<br>, "/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp"<br>, 215))</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>'?' condition is true</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>'?' condition is true</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> folder = <span class="mrange"><span class='keyword'>new</span> BookmarkNode(BookmarkNode::Folder, parent)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:34ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> folder-&gt;expanded = (attributes().value(QLatin1String(<span class='string_literal'>"folded"</span>)) == QLatin1String(<span class='string_literal'>"no"</span>));</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>while</span> (readNextStartElement())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 220</td><td><div class="PathNav"><a href="#EndPath" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">name() == QLatin1String(<span class='string_literal'>"title"</span>)</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> readTitle(folder);</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (<span class="mrange">name() == QLatin1String(<span class='string_literal'>"desc"</span>)</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:18ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:14ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> readDescription(folder);</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (<span class="mrange">name() == QLatin1String(<span class='string_literal'>"folder"</span>)</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgEvent" style="margin-left:18ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:14ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class="mrange">readFolder(folder)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Calling 'XbelReader::readFolder'</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (name() == QLatin1String(<span class='string_literal'>"bookmark"</span>))</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> readBookmarkNode(folder);</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (name() == QLatin1String(<span class='string_literal'>"separator"</span>))</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> readSeparator(folder);</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> skipCurrentElement();</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'folder'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"><span class='keyword'>void</span> XbelReader::readTitle(BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>Q_ASSERT(isStartElement() &amp;&amp; name() == QLatin1String(<span class='string_literal'>"title"</span>))<span class='expansion'>((isStartElement() &amp;&amp; name() == QLatin1String("title"<br>)) ? static_cast&lt;void&gt;(0) : qt_assert("isStartElement() &amp;&amp; name() == QLatin1String(\"title\")"<br>, "/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp"<br>, 239))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> parent-&gt;title = readElementText();</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"><span class='keyword'>void</span> XbelReader::readDescription(BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='macro'>Q_ASSERT(isStartElement() &amp;&amp; name() == QLatin1String(<span class='string_literal'>"desc"</span>))<span class='expansion'>((isStartElement() &amp;&amp; name() == QLatin1String("desc")<br>) ? static_cast&lt;void&gt;(0) : qt_assert("isStartElement() &amp;&amp; name() == QLatin1String(\"desc\")"<br>, "/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp"<br>, 245))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> parent-&gt;desc = readElementText();</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"><span class='keyword'>void</span> XbelReader::readSeparator(BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>new</span> BookmarkNode(BookmarkNode::Separator, parent);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> <span class='comment'>// empty elements have a start and end element</span></td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> readNext();</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"><span class='keyword'>void</span> XbelReader::readBookmarkNode(BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='macro'>Q_ASSERT(isStartElement() &amp;&amp; name() == QLatin1String(<span class='string_literal'>"bookmark"</span>))<span class='expansion'>((isStartElement() &amp;&amp; name() == QLatin1String("bookmark"<br>)) ? static_cast&lt;void&gt;(0) : qt_assert("isStartElement() &amp;&amp; name() == QLatin1String(\"bookmark\")"<br>, "/mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark/bookmarknode.cpp"<br>, 258))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> bookmark = <span class='keyword'>new</span> BookmarkNode(BookmarkNode::Bookmark, parent);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> bookmark-&gt;url = attributes().value(QLatin1String(<span class='string_literal'>"href"</span>)).toString();</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> QString date = attributes().value(QLatin1String(<span class='string_literal'>"added"</span>)).toString();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> bookmark-&gt;dateAdded = QDateTime::fromString(date, Qt::ISODate);</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='keyword'>while</span> (readNextStartElement())</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='keyword'>if</span> (name() == QLatin1String(<span class='string_literal'>"title"</span>))</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> readTitle(bookmark);</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (name() == QLatin1String(<span class='string_literal'>"desc"</span>))</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> readDescription(bookmark);</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> skipCurrentElement();</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='keyword'>if</span> (bookmark-&gt;title.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> bookmark-&gt;title = <span class='macro'>i18n(<span class='string_literal'>"Unknown title"</span>)<span class='expansion'>i18nd("digikam", "Unknown title")</span></span>;</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"><span class='comment'>// -------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line">XbelWriter::XbelWriter()</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> setAutoFormatting(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"><span class='keyword'>bool</span> XbelWriter::write(<span class='keyword'>const</span> QString&amp; fileName, <span class='keyword'>const</span> BookmarkNode* <span class='keyword'>const</span> root)</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> QFile file(fileName);</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> <span class='keyword'>if</span> (!root || !file.open(QFile::WriteOnly))</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> <span class='keyword'>return</span> write(&amp;file, root);</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"><span class='keyword'>bool</span> XbelWriter::write(QIODevice* <span class='keyword'>const</span> device, <span class='keyword'>const</span> BookmarkNode* <span class='keyword'>const</span> root)</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> setDevice(device);</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> writeStartDocument();</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> writeDTD(QLatin1String(<span class='string_literal'>"&lt;!DOCTYPE xbel&gt;"</span>));</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> writeStartElement(QLatin1String(<span class='string_literal'>"xbel"</span>));</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> writeAttribute(QLatin1String(<span class='string_literal'>"version"</span>), QLatin1String(<span class='string_literal'>"1.0"</span>));</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> <span class='keyword'>if</span> (root-&gt;type() == BookmarkNode::Root)</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> BookmarkNode* <span class='keyword'>const</span> rootFolder = root-&gt;children().first();</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; rootFolder-&gt;children().count() ; ++i)</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> writeItem(rootFolder-&gt;children().at(i));</td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> writeItem(root);</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> writeEndDocument();</td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"><span class='keyword'>void</span> XbelWriter::writeItem(<span class='keyword'>const</span> BookmarkNode* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='keyword'>switch</span> (parent-&gt;type())</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> <span class='keyword'>case</span> BookmarkNode::Folder:</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> writeStartElement(QLatin1String(<span class='string_literal'>"folder"</span>));</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> writeAttribute(QLatin1String(<span class='string_literal'>"folded"</span>), parent-&gt;expanded ? QLatin1String(<span class='string_literal'>"no"</span>) : QLatin1String(<span class='string_literal'>"yes"</span>));</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> writeTextElement(QLatin1String(<span class='string_literal'>"title"</span>), parent-&gt;title);</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; parent-&gt;children().count() ; ++i)</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> writeItem(parent-&gt;children().at(i));</td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> writeEndElement();</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> <span class='keyword'>case</span> BookmarkNode::Bookmark:</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> writeStartElement(QLatin1String(<span class='string_literal'>"bookmark"</span>));</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> <span class='keyword'>if</span> (!parent-&gt;url.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> writeAttribute(QLatin1String(<span class='string_literal'>"href"</span>), parent-&gt;url);</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> <span class='keyword'>if</span> (parent-&gt;dateAdded.isValid())</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> writeAttribute(QLatin1String(<span class='string_literal'>"added"</span>), parent-&gt;dateAdded.toString(Qt::ISODate));</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>if</span> (!parent-&gt;desc.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> writeAttribute(QLatin1String(<span class='string_literal'>"desc"</span>), parent-&gt;desc);</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> writeTextElement(QLatin1String(<span class='string_literal'>"title"</span>), parent-&gt;title);</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> writeEndElement();</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> <span class='keyword'>case</span> BookmarkNode::Separator:</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> writeEmptyElement(QLatin1String(<span class='string_literal'>"separator"</span>));</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> <span class='keyword'>default</span>:</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-ee1fed.html b/static/reports/clang/master/report-a85260.html
similarity index 99%
rename from static/reports/clang/master/report-ee1fed.html
rename to static/reports/clang/master/report-a85260.html
index 79437c5c1..85abc1fd7 100644
--- a/static/reports/clang/master/report-ee1fed.html
+++ b/static/reports/clang/master/report-a85260.html
@@ -1,2819 +1,2819 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Array access (from variable 'ypoints') results in a null pointer dereference -->
<!-- BUGTYPE Dereference of null pointer -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -->
<!-- FILENAME dimg_scale.cpp -->
<!-- FUNCTIONNAME dimgScaleAARGB -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 250e564f5426912ec73e94f857ac0f52 -->
<!-- BUGLINE 1453 -->
<!-- BUGCOLUMN 24 -->
<!-- BUGPATHLENGTH 41 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 1453, column 24</a><br />Array access (from variable 'ypoints') results in a null pointer dereference</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"65": 1, "66": 1, "67": 1, "68": 1, "69": 1, "70": 1, "71": 1, "72": 1, "264": 1, "265": 1, "266": 1, "267": 1, "270": 1, "271": 1, "272": 1, "273": 1, "274": 1, "275": 1, "278": 1, "283": 1, "289": 1, "292": 1, "293": 1, "295": 1, "301": 1, "306": 1, "313": 1, "319": 1, "325": 1, "331": 1, "333": 1, "335": 1, "356": 1, "367": 1, "368": 1, "369": 1, "370": 1, "371": 1, "372": 1, "417": 1, "418": 1, "419": 1, "420": 1, "421": 1, "422": 1, "424": 1, "425": 1, "426": 1, "428": 1, "430": 1, "431": 1, "434": 1, "437": 1, "438": 1, "439": 1, "440": 1, "441": 1, "443": 1, "444": 1, "445": 1, "447": 1, "449": 1, "450": 1, "453": 1, "456": 1, "457": 1, "458": 1, "459": 1, "461": 1, "464": 1, "486": 1, "487": 1, "488": 1, "489": 1, "490": 1, "492": 1, "494": 1, "495": 1, "496": 1, "497": 1, "501": 1, "504": 1, "505": 1, "506": 1, "507": 1, "508": 1, "509": 1, "510": 1, "511": 1, "513": 1, "514": 1, "516": 1, "518": 1, "520": 1, "522": 1, "523": 1, "531": 1, "533": 1, "535": 1, "554": 1, "1123": 1, "1124": 1, "1125": 1, "1126": 1, "1127": 1, "1128": 1, "1129": 1, "1133": 1, "1134": 1, "1135": 1, "1136": 1, "1137": 1, "1138": 1, "1139": 1, "1140": 1, "1141": 1, "1142": 1, "1143": 1, "1144": 1, "1145": 1, "1146": 1, "1147": 1, "1148": 1, "1150": 1, "1151": 1, "1152": 1, "1153": 1, "1156": 1, "1264": 1, "1349": 1, "1438": 1, "1439": 1, "1440": 1, "1441": 1, "1443": 1, "1445": 1, "1446": 1, "1447": 1, "1449": 1, "1451": 1, "1452": 1, "1453": 1}, "17066": {"130": 1, "131": 1, "133": 1, "134": 1}, "17430": {"184": 1, "185": 1, "199": 1, "200": 1, "214": 1, "215": 1, "217": 1, "218": 1, "265": 1, "266": 1, "268": 1, "269": 1, "444": 1, "445": 1, "446": 1}, "46996": {"245": 1, "246": 1, "247": 1, "248": 1, "250": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-14</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : digiKam 8/16 bits image management API.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* Description : Smoothscale method based on Imlib2's implementations.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* https://git.enlightenment.org/legacy/imlib2.git/tree/src/lib/scale.c</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Ported to C++ and QImage</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Add smoothScaleSection to scale only an image section.</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* Add 16 bits color depth image support.</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Copyright (C) 1999-2004 by Carsten Haitzler &lt;raster at rasterman dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Copyright (C) 2004 by Willem Monsuwe &lt;willem at stack dot nl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Daniel M. Duley &lt;mosfet at interaccess dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// C ANSI includes</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='keyword'>extern</span> <span class='string_literal'>"C"</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;stdint.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include &lt;cstring&gt;</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;cstdlib&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include &lt;cstdio&gt;</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "dimg_p.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='keyword'>typedef</span> uint64_t ullong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='keyword'>typedef</span> int64_t llong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>namespace</span> DImgScale</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> DImgScaleInfo</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> xpoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> <span class="mrange">ypoints = <span class='keyword'>nullptr</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Null pointer value stored to field 'ypoints'</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> ypoints16 = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> xapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> yapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> xup_yup = 0;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> ~DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>delete</span> [] xpoints;</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>delete</span> [] ypoints;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='keyword'>delete</span> [] ypoints16;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>delete</span> [] xapoints;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='keyword'>delete</span> [] yapoints;</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='keyword'>int</span>* xpoints;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> uint** ypoints;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> ullong** ypoints16;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>int</span>* xapoints;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='keyword'>int</span>* yapoints;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>int</span> xup_yup;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line">uint** dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">ullong** dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"><span class='keyword'>int</span>* dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw);</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>int</span>* dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">DImgScaleInfo* dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>bool</span> sixteenBit,</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='keyword'>bool</span> aa);</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"><span class='comment'>// 8 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"><span class='comment'>// 16 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"><span class='comment'>// 8 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"><span class='comment'>// 8 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='comment'>// 16 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"><span class='comment'>// 16 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> DImgScale;</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"><span class='comment'>#define CLIP(x, y, w, h, xx, yy, ww, hh) \</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"><span class='comment'>if (x &lt; (xx)) {w += (x - (xx)); x = (xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"><span class='comment'>if (y &lt; (yy)) {h += (y - (yy)); y = (yy);} \</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='comment'>if ((x + w) &gt; ((xx) + (ww))) {w = (ww) - (x - xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"><span class='comment'>if ((y + h) &gt; ((yy) + (hh))) {h = (hh) - (y - yy);}</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>const</span> QSize&amp; destSize, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QSize scaleSize = size();</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> scaleSize.scale(destSize, aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='keyword'>if</span> (scaleSize.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>return</span> smoothScaleClipped(scaleSize, QRect(QPoint(0, 0), scaleSize));</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>return</span> smoothScale(QSize(dw, dh), aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>const</span> QSize&amp; destSize, <span class='keyword'>const</span> QRect&amp; clip) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>return</span> DImg::smoothScaleClipped(destSize.width(), destSize.height(),</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> clip.x(), clip.y(), clip.width(), clip.height());</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> clipx, <span class='keyword'>int</span> clipy, <span class='keyword'>int</span> clipw, <span class='keyword'>int</span> cliph) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>if</span> (dw &lt;= 0 || dh &lt;= 0 || clipw &lt;= 0 || cliph &lt;= 0 || isNull())</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>if</span> (w &lt;= 0 || h &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='comment'>// ensure clip is valid</span></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(clipx, clipy, clipw, cliph, dw, dh))</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>if</span> ((w == (uint)dw) &amp;&amp; (h == (uint)dh))</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='keyword'>if</span> (clipw == dw &amp;&amp; cliph == dh)</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>return</span> copy();</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>return</span> copy(clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> DImgScaleInfo* scaleinfo = dimgCalcScaleInfo(*<span class='keyword'>this</span>, w, h, dw, dh, sixteenBit(), <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>if</span> (sixteenBit())</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> dimgScaleAARGBA(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> dimgScaleAARGB(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>const</span> QRect&amp; sourceRect, <span class='keyword'>const</span> QSize&amp; destSize) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">smoothScaleSection(sourceRect.x(), sourceRect.y(), sourceRect.width(), sourceRect.height(),</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Calling 'DImg::smoothScaleSection'</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange">destSize.width(), destSize.height())</span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>int</span> sx, <span class='keyword'>int</span> sy,</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='comment'>// sanity checks</span></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">dw &lt;= 0</span>) || (<span class="mrange">dh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming 'dw' is &gt; 0</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming 'dh' is &gt; 0</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='comment'>// clip the source rect to be within the actual image</span></td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='keyword'>int</span> <span class='comment'>/*psx, psy,*/</span> psw, psh;</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"><span class='comment'>// psx = sx;</span></td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"><span class='comment'>// psy = sy;</span></td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> psw = sw;</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> psh = sh;</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(sx, sy, sw, sh, w, h))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='comment'>// clip output coords to clipped input coords</span></td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psw != sw</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Assuming 'psw' is equal to 'sw'</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> dw = (dw * sw) / psw;</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psh != sh</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming 'psh' is equal to 'sh'</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> dh = (dh * sh) / psh;</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='comment'>// do a second check to see if we now have invalid coords</span></td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> <span class='comment'>// do not do anything if we have a 0 width or height image to render</span></td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>if</span> ((dw &lt;= 0) || (dh &lt;= 0))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> <span class='comment'>// if the input rect size &lt; 0 do not render either</span></td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw == dw</span>) &amp;&amp; (sh == dh))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming 'sw' is not equal to 'dw'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> <span class='keyword'>return</span> copy(sx, sy, sw, sh);</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> <span class='comment'>// calculate scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> DImgScaleInfo* scaleinfo = <span class="mrange"><span class="mrange">dimgCalcScaleInfo(*<span class='keyword'>this</span>, sw, sh, dw, dh, sixteenBit(), <span class='keyword'>true</span>)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Calling 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Returning from 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">hasAlpha()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> dimgScaleAARGBA(scaleinfo,</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> <span class="mrange">dimgScaleAARGB(scaleinfo,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGB'</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class="mrange"><span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr></span>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> <span class="mrange">((sx * dw) / sw),</td></tr></span>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> <span class="mrange">((sy * dh) / sh),</td></tr></span>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> <span class="mrange">dw, dh,</td></tr></span>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> <span class="mrange">dw, w)</span>;</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"><span class='comment'>// Code ported from Imlib2...</span></td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"><span class='comment'>// FIXME: replace with mRed, etc... These work on pointers to pixels, not</span></td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"><span class='comment'>// pixel values</span></td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL(p)<span class='expansion'>((unsigned char*)(p))[3]</span></span> ((unsigned char*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL(p)<span class='expansion'>((unsigned char*)(p))[2]</span></span> ((unsigned char*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL(p)<span class='expansion'>((unsigned char*)(p))[1]</span></span> ((unsigned char*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL(p)<span class='expansion'>((unsigned char*)(p))[0]</span></span> ((unsigned char*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"><span class='directive'>#define <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span> (256 - xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"><span class='directive'>#define <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> (xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"><span class='directive'>#define <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span> (256 - yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"><span class='directive'>#define <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> (yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line">uint** DImgScale::dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> uint** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> p = <span class='keyword'>new</span> uint* [dh+1];</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line">ullong** DImgScale::dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> ullong** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> p = <span class='keyword'>new</span> ullong*[(dh+1)];</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>return</span> p;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw)</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[dw+1];</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> inc = (((ullong)sw) &lt;&lt; 16) / dw;</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dw ; ++i)</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> p[j++] = (val &gt;&gt; 16);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up)</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[d];</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> <span class='comment'>/* scaling up */</span></td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='keyword'>if</span> (up)</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> p[j++] = (val &gt;&gt; 8) - ((val &gt;&gt; 8) &amp; 0xffffff00);</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> <span class='keyword'>if</span> ((<span class='keyword'>int</span>)(val &gt;&gt; 16) &gt;= (s - 1))</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> p[j - 1] = 0;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> <span class='comment'>/* scaling down */</span></td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='keyword'>int</span> ap, Cp;</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> Cp = ((d &lt;&lt; 14) / s) + 1;</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> ap = ((0x100 - ((val &gt;&gt; 8) &amp; 0xff)) * Cp) &gt;&gt; 8;</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> p[j] = ap | (Cp &lt;&lt; 16);</td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> ++j;</td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line">DImgScaleInfo* DImgScale::dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> <span class='keyword'>bool</span> <span class='comment'>/*sixteenBit*/</span>,</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> <span class='keyword'>bool</span> aa)</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> DImgScaleInfo* isi = <span class='keyword'>new</span> <span class="mrange"><span class="mrange">DImgScaleInfo</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Calling default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Returning from default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> <span class='keyword'>int</span> scw, sch;</td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> scw = dw * img.width() / sw;</td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> sch = dh * img.height() / sh;</td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> isi-&gt;xup_yup = (<span class="mrange">abs(dw) &gt;= sw</span>) + ((<span class="mrange">abs(dh) &gt;= sh</span>) &lt;&lt; 1);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:40ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> isi-&gt;xpoints = dimgCalcXPoints(img.width(), scw);</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">img.sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> isi-&gt;ypoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> isi-&gt;ypoints16 = dimgCalcYPoints16(<span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> isi-&gt;ypoints16 = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> isi-&gt;ypoints = dimgCalcYPoints(<span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='keyword'>if</span> (aa)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> isi-&gt;xapoints = dimgCalcApoints(img.width(), scw, isi-&gt;xup_yup &amp; 1);</td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> isi-&gt;yapoints = dimgCalcApoints(img.height(), sch, isi-&gt;xup_yup &amp; 2);</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> isi-&gt;xapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[scw];</td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; scw; ++i)</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> isi-&gt;xapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> isi-&gt;yapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[sch];</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; sch; ++i)</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> isi-&gt;yapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> <span class='keyword'>return</span> isi;</td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"><span class='comment'>/** scale by pixel sampling only */</span></td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> dimgSampleRGBA(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> dimgSampleRGBA16(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"><span class='comment'>/* FIXME: NEED to optimize ScaleAARGBA - currently its "ok" but needs work*/</span></td></tr>
<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"><span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"><span class='comment'>dimgScaleAARGBA : scale by area sampling. Arguments:</span></td></tr>
<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> <span class='comment'>DImgScaleInfo* isi, // scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='comment'>uint* dest, // destination img data</span></td></tr>
<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> <span class='comment'>int dxx, // destination x location corresponding to start x of src section</span></td></tr>
<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> <span class='comment'>int dyy, // destination y location corresponding to start y of src section</span></td></tr>
<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> <span class='comment'>int dw, // destination width</span></td></tr>
<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> <span class='comment'>int dh, // destination height</span></td></tr>
<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> <span class='comment'>int dow, // destination scanline width</span></td></tr>
<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> <span class='comment'>int sow); // src scanline width</span></td></tr>
<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> dimgScaleAARGBA(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> <span class='keyword'>int</span> rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line"> aa = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="719"><td class="num" id="LN719">719</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="720"><td class="num" id="LN720">720</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="721"><td class="num" id="LN721">721</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="722"><td class="num" id="LN722">722</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="723"><td class="num" id="LN723">723</td><td class="line"> aa += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="724"><td class="num" id="LN724">724</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="725"><td class="num" id="LN725">725</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="726"><td class="num" id="LN726">726</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="727"><td class="num" id="LN727">727</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="728"><td class="num" id="LN728">728</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="729"><td class="num" id="LN729">729</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="730"><td class="num" id="LN730">730</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="731"><td class="num" id="LN731">731</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="732"><td class="num" id="LN732">732</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="733"><td class="num" id="LN733">733</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="734"><td class="num" id="LN734">734</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="735"><td class="num" id="LN735">735</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="736"><td class="num" id="LN736">736</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="737"><td class="num" id="LN737">737</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="738"><td class="num" id="LN738">738</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="739"><td class="num" id="LN739">739</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="740"><td class="num" id="LN740">740</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="741"><td class="num" id="LN741">741</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="742"><td class="num" id="LN742">742</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="743"><td class="num" id="LN743">743</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="744"><td class="num" id="LN744">744</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="745"><td class="num" id="LN745">745</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="746"><td class="num" id="LN746">746</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="747"><td class="num" id="LN747">747</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="748"><td class="num" id="LN748">748</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="749"><td class="num" id="LN749">749</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="750"><td class="num" id="LN750">750</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="751"><td class="num" id="LN751">751</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="752"><td class="num" id="LN752">752</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="753"><td class="num" id="LN753">753</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="754"><td class="num" id="LN754">754</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="755"><td class="num" id="LN755">755</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="756"><td class="num" id="LN756">756</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="757"><td class="num" id="LN757">757</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="758"><td class="num" id="LN758">758</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="759"><td class="num" id="LN759">759</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="760"><td class="num" id="LN760">760</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="761"><td class="num" id="LN761">761</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="762"><td class="num" id="LN762">762</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="763"><td class="num" id="LN763">763</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="764"><td class="num" id="LN764">764</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="765"><td class="num" id="LN765">765</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="766"><td class="num" id="LN766">766</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="767"><td class="num" id="LN767">767</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="768"><td class="num" id="LN768">768</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="769"><td class="num" id="LN769">769</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="770"><td class="num" id="LN770">770</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="771"><td class="num" id="LN771">771</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="772"><td class="num" id="LN772">772</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="773"><td class="num" id="LN773">773</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="774"><td class="num" id="LN774">774</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="775"><td class="num" id="LN775">775</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="776"><td class="num" id="LN776">776</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="777"><td class="num" id="LN777">777</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="778"><td class="num" id="LN778">778</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="779"><td class="num" id="LN779">779</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="780"><td class="num" id="LN780">780</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="781"><td class="num" id="LN781">781</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="782"><td class="num" id="LN782">782</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="783"><td class="num" id="LN783">783</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="784"><td class="num" id="LN784">784</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="785"><td class="num" id="LN785">785</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="786"><td class="num" id="LN786">786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="787"><td class="num" id="LN787">787</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="788"><td class="num" id="LN788">788</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="789"><td class="num" id="LN789">789</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="790"><td class="num" id="LN790">790</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="791"><td class="num" id="LN791">791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="792"><td class="num" id="LN792">792</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="793"><td class="num" id="LN793">793</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="794"><td class="num" id="LN794">794</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="795"><td class="num" id="LN795">795</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="796"><td class="num" id="LN796">796</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="797"><td class="num" id="LN797">797</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="798"><td class="num" id="LN798">798</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="799"><td class="num" id="LN799">799</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="800"><td class="num" id="LN800">800</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="801"><td class="num" id="LN801">801</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="802"><td class="num" id="LN802">802</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="803"><td class="num" id="LN803">803</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="804"><td class="num" id="LN804">804</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="805"><td class="num" id="LN805">805</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="806"><td class="num" id="LN806">806</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="807"><td class="num" id="LN807">807</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="808"><td class="num" id="LN808">808</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="809"><td class="num" id="LN809">809</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="810"><td class="num" id="LN810">810</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="811"><td class="num" id="LN811">811</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="812"><td class="num" id="LN812">812</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="813"><td class="num" id="LN813">813</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="814"><td class="num" id="LN814">814</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="815"><td class="num" id="LN815">815</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="816"><td class="num" id="LN816">816</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="817"><td class="num" id="LN817">817</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="818"><td class="num" id="LN818">818</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="819"><td class="num" id="LN819">819</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="820"><td class="num" id="LN820">820</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="821"><td class="num" id="LN821">821</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="822"><td class="num" id="LN822">822</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="823"><td class="num" id="LN823">823</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="824"><td class="num" id="LN824">824</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="825"><td class="num" id="LN825">825</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="826"><td class="num" id="LN826">826</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="827"><td class="num" id="LN827">827</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="828"><td class="num" id="LN828">828</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="829"><td class="num" id="LN829">829</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="830"><td class="num" id="LN830">830</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="831"><td class="num" id="LN831">831</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="832"><td class="num" id="LN832">832</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="833"><td class="num" id="LN833">833</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="834"><td class="num" id="LN834">834</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="835"><td class="num" id="LN835">835</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="836"><td class="num" id="LN836">836</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="837"><td class="num" id="LN837">837</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="838"><td class="num" id="LN838">838</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="839"><td class="num" id="LN839">839</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="840"><td class="num" id="LN840">840</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="841"><td class="num" id="LN841">841</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="842"><td class="num" id="LN842">842</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="843"><td class="num" id="LN843">843</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="844"><td class="num" id="LN844">844</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="845"><td class="num" id="LN845">845</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="846"><td class="num" id="LN846">846</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="847"><td class="num" id="LN847">847</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="848"><td class="num" id="LN848">848</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="849"><td class="num" id="LN849">849</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="850"><td class="num" id="LN850">850</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="851"><td class="num" id="LN851">851</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="852"><td class="num" id="LN852">852</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="853"><td class="num" id="LN853">853</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="854"><td class="num" id="LN854">854</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="855"><td class="num" id="LN855">855</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="856"><td class="num" id="LN856">856</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="857"><td class="num" id="LN857">857</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="858"><td class="num" id="LN858">858</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="859"><td class="num" id="LN859">859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="860"><td class="num" id="LN860">860</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="861"><td class="num" id="LN861">861</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="862"><td class="num" id="LN862">862</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="863"><td class="num" id="LN863">863</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="864"><td class="num" id="LN864">864</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="865"><td class="num" id="LN865">865</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="866"><td class="num" id="LN866">866</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="867"><td class="num" id="LN867">867</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="868"><td class="num" id="LN868">868</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="869"><td class="num" id="LN869">869</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="870"><td class="num" id="LN870">870</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="871"><td class="num" id="LN871">871</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="872"><td class="num" id="LN872">872</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="873"><td class="num" id="LN873">873</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="874"><td class="num" id="LN874">874</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="875"><td class="num" id="LN875">875</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="876"><td class="num" id="LN876">876</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="877"><td class="num" id="LN877">877</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="878"><td class="num" id="LN878">878</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="879"><td class="num" id="LN879">879</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="880"><td class="num" id="LN880">880</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="881"><td class="num" id="LN881">881</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="882"><td class="num" id="LN882">882</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="883"><td class="num" id="LN883">883</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="884"><td class="num" id="LN884">884</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="885"><td class="num" id="LN885">885</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="886"><td class="num" id="LN886">886</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="887"><td class="num" id="LN887">887</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="888"><td class="num" id="LN888">888</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="889"><td class="num" id="LN889">889</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="890"><td class="num" id="LN890">890</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="891"><td class="num" id="LN891">891</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="892"><td class="num" id="LN892">892</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="893"><td class="num" id="LN893">893</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="894"><td class="num" id="LN894">894</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="895"><td class="num" id="LN895">895</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="896"><td class="num" id="LN896">896</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="897"><td class="num" id="LN897">897</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="898"><td class="num" id="LN898">898</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="899"><td class="num" id="LN899">899</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="900"><td class="num" id="LN900">900</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="901"><td class="num" id="LN901">901</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="902"><td class="num" id="LN902">902</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="903"><td class="num" id="LN903">903</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="904"><td class="num" id="LN904">904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="905"><td class="num" id="LN905">905</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="906"><td class="num" id="LN906">906</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="907"><td class="num" id="LN907">907</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="908"><td class="num" id="LN908">908</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="909"><td class="num" id="LN909">909</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="910"><td class="num" id="LN910">910</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="911"><td class="num" id="LN911">911</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="912"><td class="num" id="LN912">912</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="913"><td class="num" id="LN913">913</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="914"><td class="num" id="LN914">914</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="915"><td class="num" id="LN915">915</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="916"><td class="num" id="LN916">916</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="917"><td class="num" id="LN917">917</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="918"><td class="num" id="LN918">918</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="919"><td class="num" id="LN919">919</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="920"><td class="num" id="LN920">920</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="921"><td class="num" id="LN921">921</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="922"><td class="num" id="LN922">922</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="923"><td class="num" id="LN923">923</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="924"><td class="num" id="LN924">924</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="925"><td class="num" id="LN925">925</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="926"><td class="num" id="LN926">926</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="927"><td class="num" id="LN927">927</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="928"><td class="num" id="LN928">928</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="929"><td class="num" id="LN929">929</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="930"><td class="num" id="LN930">930</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="931"><td class="num" id="LN931">931</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="932"><td class="num" id="LN932">932</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="933"><td class="num" id="LN933">933</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="934"><td class="num" id="LN934">934</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="935"><td class="num" id="LN935">935</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="936"><td class="num" id="LN936">936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="937"><td class="num" id="LN937">937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="938"><td class="num" id="LN938">938</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="939"><td class="num" id="LN939">939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="940"><td class="num" id="LN940">940</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="941"><td class="num" id="LN941">941</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="942"><td class="num" id="LN942">942</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="943"><td class="num" id="LN943">943</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="944"><td class="num" id="LN944">944</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="945"><td class="num" id="LN945">945</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="946"><td class="num" id="LN946">946</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="947"><td class="num" id="LN947">947</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="948"><td class="num" id="LN948">948</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="949"><td class="num" id="LN949">949</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="950"><td class="num" id="LN950">950</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="951"><td class="num" id="LN951">951</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="952"><td class="num" id="LN952">952</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="953"><td class="num" id="LN953">953</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="954"><td class="num" id="LN954">954</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="955"><td class="num" id="LN955">955</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="956"><td class="num" id="LN956">956</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="957"><td class="num" id="LN957">957</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="958"><td class="num" id="LN958">958</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="959"><td class="num" id="LN959">959</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="960"><td class="num" id="LN960">960</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="961"><td class="num" id="LN961">961</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="962"><td class="num" id="LN962">962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="963"><td class="num" id="LN963">963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="964"><td class="num" id="LN964">964</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="965"><td class="num" id="LN965">965</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="966"><td class="num" id="LN966">966</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="967"><td class="num" id="LN967">967</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="968"><td class="num" id="LN968">968</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="969"><td class="num" id="LN969">969</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="970"><td class="num" id="LN970">970</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="971"><td class="num" id="LN971">971</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="972"><td class="num" id="LN972">972</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="973"><td class="num" id="LN973">973</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="974"><td class="num" id="LN974">974</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="975"><td class="num" id="LN975">975</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="976"><td class="num" id="LN976">976</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="977"><td class="num" id="LN977">977</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="978"><td class="num" id="LN978">978</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="979"><td class="num" id="LN979">979</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="980"><td class="num" id="LN980">980</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="981"><td class="num" id="LN981">981</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="982"><td class="num" id="LN982">982</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="983"><td class="num" id="LN983">983</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="984"><td class="num" id="LN984">984</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="985"><td class="num" id="LN985">985</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="986"><td class="num" id="LN986">986</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="987"><td class="num" id="LN987">987</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="988"><td class="num" id="LN988">988</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="989"><td class="num" id="LN989">989</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="990"><td class="num" id="LN990">990</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="991"><td class="num" id="LN991">991</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="992"><td class="num" id="LN992">992</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="993"><td class="num" id="LN993">993</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="994"><td class="num" id="LN994">994</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="995"><td class="num" id="LN995">995</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="996"><td class="num" id="LN996">996</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="997"><td class="num" id="LN997">997</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="998"><td class="num" id="LN998">998</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="999"><td class="num" id="LN999">999</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1000"><td class="num" id="LN1000">1000</td><td class="line"> <span class='keyword'>int</span> a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1001"><td class="num" id="LN1001">1001</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1002"><td class="num" id="LN1002">1002</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1003"><td class="num" id="LN1003">1003</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1004"><td class="num" id="LN1004">1004</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1005"><td class="num" id="LN1005">1005</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1006"><td class="num" id="LN1006">1006</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1007"><td class="num" id="LN1007">1007</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1008"><td class="num" id="LN1008">1008</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1009"><td class="num" id="LN1009">1009</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1010"><td class="num" id="LN1010">1010</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1011"><td class="num" id="LN1011">1011</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1012"><td class="num" id="LN1012">1012</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1013"><td class="num" id="LN1013">1013</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1014"><td class="num" id="LN1014">1014</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1015"><td class="num" id="LN1015">1015</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1016"><td class="num" id="LN1016">1016</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1017"><td class="num" id="LN1017">1017</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1018"><td class="num" id="LN1018">1018</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1019"><td class="num" id="LN1019">1019</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1020"><td class="num" id="LN1020">1020</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1021"><td class="num" id="LN1021">1021</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1022"><td class="num" id="LN1022">1022</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1023"><td class="num" id="LN1023">1023</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1024"><td class="num" id="LN1024">1024</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1025"><td class="num" id="LN1025">1025</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1026"><td class="num" id="LN1026">1026</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1027"><td class="num" id="LN1027">1027</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1028"><td class="num" id="LN1028">1028</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1029"><td class="num" id="LN1029">1029</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1030"><td class="num" id="LN1030">1030</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1031"><td class="num" id="LN1031">1031</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1032"><td class="num" id="LN1032">1032</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1033"><td class="num" id="LN1033">1033</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1034"><td class="num" id="LN1034">1034</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1035"><td class="num" id="LN1035">1035</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1036"><td class="num" id="LN1036">1036</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1037"><td class="num" id="LN1037">1037</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1038"><td class="num" id="LN1038">1038</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1039"><td class="num" id="LN1039">1039</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1040"><td class="num" id="LN1040">1040</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1041"><td class="num" id="LN1041">1041</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1042"><td class="num" id="LN1042">1042</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1043"><td class="num" id="LN1043">1043</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1044"><td class="num" id="LN1044">1044</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1045"><td class="num" id="LN1045">1045</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1046"><td class="num" id="LN1046">1046</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1047"><td class="num" id="LN1047">1047</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1048"><td class="num" id="LN1048">1048</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1049"><td class="num" id="LN1049">1049</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1050"><td class="num" id="LN1050">1050</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1051"><td class="num" id="LN1051">1051</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1052"><td class="num" id="LN1052">1052</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1053"><td class="num" id="LN1053">1053</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1054"><td class="num" id="LN1054">1054</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1055"><td class="num" id="LN1055">1055</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1056"><td class="num" id="LN1056">1056</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1057"><td class="num" id="LN1057">1057</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1058"><td class="num" id="LN1058">1058</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1059"><td class="num" id="LN1059">1059</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1060"><td class="num" id="LN1060">1060</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1061"><td class="num" id="LN1061">1061</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1062"><td class="num" id="LN1062">1062</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1063"><td class="num" id="LN1063">1063</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1064"><td class="num" id="LN1064">1064</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1065"><td class="num" id="LN1065">1065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1066"><td class="num" id="LN1066">1066</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1067"><td class="num" id="LN1067">1067</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1068"><td class="num" id="LN1068">1068</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1069"><td class="num" id="LN1069">1069</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1070"><td class="num" id="LN1070">1070</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1071"><td class="num" id="LN1071">1071</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1072"><td class="num" id="LN1072">1072</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1073"><td class="num" id="LN1073">1073</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1074"><td class="num" id="LN1074">1074</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1075"><td class="num" id="LN1075">1075</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1076"><td class="num" id="LN1076">1076</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1077"><td class="num" id="LN1077">1077</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1078"><td class="num" id="LN1078">1078</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1079"><td class="num" id="LN1079">1079</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1080"><td class="num" id="LN1080">1080</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1081"><td class="num" id="LN1081">1081</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1082"><td class="num" id="LN1082">1082</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1083"><td class="num" id="LN1083">1083</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1084"><td class="num" id="LN1084">1084</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1085"><td class="num" id="LN1085">1085</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1086"><td class="num" id="LN1086">1086</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1087"><td class="num" id="LN1087">1087</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1088"><td class="num" id="LN1088">1088</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1089"><td class="num" id="LN1089">1089</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1090"><td class="num" id="LN1090">1090</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1091"><td class="num" id="LN1091">1091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1092"><td class="num" id="LN1092">1092</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1093"><td class="num" id="LN1093">1093</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1094"><td class="num" id="LN1094">1094</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1095"><td class="num" id="LN1095">1095</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1096"><td class="num" id="LN1096">1096</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1097"><td class="num" id="LN1097">1097</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1098"><td class="num" id="LN1098">1098</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1099"><td class="num" id="LN1099">1099</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1100"><td class="num" id="LN1100">1100</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1101"><td class="num" id="LN1101">1101</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1102"><td class="num" id="LN1102">1102</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1103"><td class="num" id="LN1103">1103</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1104"><td class="num" id="LN1104">1104</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1105"><td class="num" id="LN1105">1105</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1106"><td class="num" id="LN1106">1106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1107"><td class="num" id="LN1107">1107</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1108"><td class="num" id="LN1108">1108</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1109"><td class="num" id="LN1109">1109</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1110"><td class="num" id="LN1110">1110</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1111"><td class="num" id="LN1111">1111</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1112"><td class="num" id="LN1112">1112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1113"><td class="num" id="LN1113">1113</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1114"><td class="num" id="LN1114">1114</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1115"><td class="num" id="LN1115">1115</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1116"><td class="num" id="LN1116">1116</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1117"><td class="num" id="LN1117">1117</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1118"><td class="num" id="LN1118">1118</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1119"><td class="num" id="LN1119">1119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1120"><td class="num" id="LN1120">1120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1121"><td class="num" id="LN1121">1121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1122"><td class="num" id="LN1122">1122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1123"><td class="num" id="LN1123">1123</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1124"><td class="num" id="LN1124">1124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1125"><td class="num" id="LN1125">1125</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1126"><td class="num" id="LN1126">1126</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1127"><td class="num" id="LN1127">1127</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1128"><td class="num" id="LN1128">1128</td><td class="line"> <span class="mrange">dimgScaleAARGB(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGB'</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1129"><td class="num" id="LN1129">1129</td><td class="line"> <span class="mrange">0, 0, dw, dh)</span>;</td></tr>
<tr class="codeline" data-linenumber="1130"><td class="num" id="LN1130">1130</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1131"><td class="num" id="LN1131">1131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1132"><td class="num" id="LN1132">1132</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte */</span></td></tr>
<tr class="codeline" data-linenumber="1133"><td class="num" id="LN1133">1133</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1134"><td class="num" id="LN1134">1134</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1135"><td class="num" id="LN1135">1135</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1136"><td class="num" id="LN1136">1136</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1137"><td class="num" id="LN1137">1137</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1138"><td class="num" id="LN1138">1138</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1139"><td class="num" id="LN1139">1139</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1140"><td class="num" id="LN1140">1140</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1141"><td class="num" id="LN1141">1141</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1142"><td class="num" id="LN1142">1142</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1143"><td class="num" id="LN1143">1143</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1144"><td class="num" id="LN1144">1144</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1145"><td class="num" id="LN1145">1145</td><td class="line"> <span class="mrange">uint** ypoints</span> = isi-&gt;ypoints;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>'ypoints' initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1146"><td class="num" id="LN1146">1146</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1147"><td class="num" id="LN1147">1147</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1148"><td class="num" id="LN1148">1148</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1149"><td class="num" id="LN1149">1149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1150"><td class="num" id="LN1150">1150</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1151"><td class="num" id="LN1151">1151</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1152"><td class="num" id="LN1152">1152</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1153"><td class="num" id="LN1153">1153</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1154"><td class="num" id="LN1154">1154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1155"><td class="num" id="LN1155">1155</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="1156"><td class="num" id="LN1156">1156</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1157"><td class="num" id="LN1157">1157</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1158"><td class="num" id="LN1158">1158</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1159"><td class="num" id="LN1159">1159</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1160"><td class="num" id="LN1160">1160</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1161"><td class="num" id="LN1161">1161</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="1162"><td class="num" id="LN1162">1162</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1163"><td class="num" id="LN1163">1163</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1164"><td class="num" id="LN1164">1164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1165"><td class="num" id="LN1165">1165</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1166"><td class="num" id="LN1166">1166</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1167"><td class="num" id="LN1167">1167</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1168"><td class="num" id="LN1168">1168</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1169"><td class="num" id="LN1169">1169</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1170"><td class="num" id="LN1170">1170</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1171"><td class="num" id="LN1171">1171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1172"><td class="num" id="LN1172">1172</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1173"><td class="num" id="LN1173">1173</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1174"><td class="num" id="LN1174">1174</td><td class="line"> <span class='keyword'>int</span> rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1175"><td class="num" id="LN1175">1175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1176"><td class="num" id="LN1176">1176</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1177"><td class="num" id="LN1177">1177</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1178"><td class="num" id="LN1178">1178</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1179"><td class="num" id="LN1179">1179</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1180"><td class="num" id="LN1180">1180</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1181"><td class="num" id="LN1181">1181</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1182"><td class="num" id="LN1182">1182</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1183"><td class="num" id="LN1183">1183</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1184"><td class="num" id="LN1184">1184</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1185"><td class="num" id="LN1185">1185</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1186"><td class="num" id="LN1186">1186</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1187"><td class="num" id="LN1187">1187</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1188"><td class="num" id="LN1188">1188</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1189"><td class="num" id="LN1189">1189</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1190"><td class="num" id="LN1190">1190</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1191"><td class="num" id="LN1191">1191</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1192"><td class="num" id="LN1192">1192</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1193"><td class="num" id="LN1193">1193</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1194"><td class="num" id="LN1194">1194</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1195"><td class="num" id="LN1195">1195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1196"><td class="num" id="LN1196">1196</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1197"><td class="num" id="LN1197">1197</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1198"><td class="num" id="LN1198">1198</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1199"><td class="num" id="LN1199">1199</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1200"><td class="num" id="LN1200">1200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1201"><td class="num" id="LN1201">1201</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1202"><td class="num" id="LN1202">1202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1203"><td class="num" id="LN1203">1203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1204"><td class="num" id="LN1204">1204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1205"><td class="num" id="LN1205">1205</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1206"><td class="num" id="LN1206">1206</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1207"><td class="num" id="LN1207">1207</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1208"><td class="num" id="LN1208">1208</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1209"><td class="num" id="LN1209">1209</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1210"><td class="num" id="LN1210">1210</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1211"><td class="num" id="LN1211">1211</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1212"><td class="num" id="LN1212">1212</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1213"><td class="num" id="LN1213">1213</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1214"><td class="num" id="LN1214">1214</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1215"><td class="num" id="LN1215">1215</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1216"><td class="num" id="LN1216">1216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1217"><td class="num" id="LN1217">1217</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1218"><td class="num" id="LN1218">1218</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1219"><td class="num" id="LN1219">1219</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1220"><td class="num" id="LN1220">1220</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1221"><td class="num" id="LN1221">1221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1222"><td class="num" id="LN1222">1222</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1223"><td class="num" id="LN1223">1223</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1224"><td class="num" id="LN1224">1224</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1225"><td class="num" id="LN1225">1225</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1226"><td class="num" id="LN1226">1226</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1227"><td class="num" id="LN1227">1227</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1228"><td class="num" id="LN1228">1228</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1229"><td class="num" id="LN1229">1229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1230"><td class="num" id="LN1230">1230</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1231"><td class="num" id="LN1231">1231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1232"><td class="num" id="LN1232">1232</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1233"><td class="num" id="LN1233">1233</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1234"><td class="num" id="LN1234">1234</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1235"><td class="num" id="LN1235">1235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1236"><td class="num" id="LN1236">1236</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1237"><td class="num" id="LN1237">1237</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1238"><td class="num" id="LN1238">1238</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1239"><td class="num" id="LN1239">1239</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1240"><td class="num" id="LN1240">1240</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1241"><td class="num" id="LN1241">1241</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1242"><td class="num" id="LN1242">1242</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1243"><td class="num" id="LN1243">1243</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1244"><td class="num" id="LN1244">1244</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1245"><td class="num" id="LN1245">1245</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1246"><td class="num" id="LN1246">1246</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1247"><td class="num" id="LN1247">1247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1248"><td class="num" id="LN1248">1248</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1249"><td class="num" id="LN1249">1249</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1250"><td class="num" id="LN1250">1250</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1251"><td class="num" id="LN1251">1251</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1252"><td class="num" id="LN1252">1252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1253"><td class="num" id="LN1253">1253</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1254"><td class="num" id="LN1254">1254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1255"><td class="num" id="LN1255">1255</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1256"><td class="num" id="LN1256">1256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1257"><td class="num" id="LN1257">1257</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1258"><td class="num" id="LN1258">1258</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1259"><td class="num" id="LN1259">1259</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1260"><td class="num" id="LN1260">1260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1261"><td class="num" id="LN1261">1261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1262"><td class="num" id="LN1262">1262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1263"><td class="num" id="LN1263">1263</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1264"><td class="num" id="LN1264">1264</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1265"><td class="num" id="LN1265">1265</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1266"><td class="num" id="LN1266">1266</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1267"><td class="num" id="LN1267">1267</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1268"><td class="num" id="LN1268">1268</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1269"><td class="num" id="LN1269">1269</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1270"><td class="num" id="LN1270">1270</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1271"><td class="num" id="LN1271">1271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1272"><td class="num" id="LN1272">1272</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1273"><td class="num" id="LN1273">1273</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1274"><td class="num" id="LN1274">1274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1275"><td class="num" id="LN1275">1275</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1276"><td class="num" id="LN1276">1276</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1277"><td class="num" id="LN1277">1277</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1278"><td class="num" id="LN1278">1278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1279"><td class="num" id="LN1279">1279</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1280"><td class="num" id="LN1280">1280</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1281"><td class="num" id="LN1281">1281</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1282"><td class="num" id="LN1282">1282</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1283"><td class="num" id="LN1283">1283</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1284"><td class="num" id="LN1284">1284</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1285"><td class="num" id="LN1285">1285</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1286"><td class="num" id="LN1286">1286</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1287"><td class="num" id="LN1287">1287</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1288"><td class="num" id="LN1288">1288</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1289"><td class="num" id="LN1289">1289</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1290"><td class="num" id="LN1290">1290</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1291"><td class="num" id="LN1291">1291</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1292"><td class="num" id="LN1292">1292</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1293"><td class="num" id="LN1293">1293</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1294"><td class="num" id="LN1294">1294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1295"><td class="num" id="LN1295">1295</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1296"><td class="num" id="LN1296">1296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1297"><td class="num" id="LN1297">1297</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1298"><td class="num" id="LN1298">1298</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1299"><td class="num" id="LN1299">1299</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1300"><td class="num" id="LN1300">1300</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1301"><td class="num" id="LN1301">1301</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1302"><td class="num" id="LN1302">1302</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1303"><td class="num" id="LN1303">1303</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1304"><td class="num" id="LN1304">1304</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1305"><td class="num" id="LN1305">1305</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1306"><td class="num" id="LN1306">1306</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1307"><td class="num" id="LN1307">1307</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1308"><td class="num" id="LN1308">1308</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1309"><td class="num" id="LN1309">1309</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1310"><td class="num" id="LN1310">1310</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1311"><td class="num" id="LN1311">1311</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1312"><td class="num" id="LN1312">1312</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1313"><td class="num" id="LN1313">1313</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1314"><td class="num" id="LN1314">1314</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1315"><td class="num" id="LN1315">1315</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1316"><td class="num" id="LN1316">1316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1317"><td class="num" id="LN1317">1317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1318"><td class="num" id="LN1318">1318</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1319"><td class="num" id="LN1319">1319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1320"><td class="num" id="LN1320">1320</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1321"><td class="num" id="LN1321">1321</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1322"><td class="num" id="LN1322">1322</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1323"><td class="num" id="LN1323">1323</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1324"><td class="num" id="LN1324">1324</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1325"><td class="num" id="LN1325">1325</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1326"><td class="num" id="LN1326">1326</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1327"><td class="num" id="LN1327">1327</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1328"><td class="num" id="LN1328">1328</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1329"><td class="num" id="LN1329">1329</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1330"><td class="num" id="LN1330">1330</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1331"><td class="num" id="LN1331">1331</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1332"><td class="num" id="LN1332">1332</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1333"><td class="num" id="LN1333">1333</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1334"><td class="num" id="LN1334">1334</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1335"><td class="num" id="LN1335">1335</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1336"><td class="num" id="LN1336">1336</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1337"><td class="num" id="LN1337">1337</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1338"><td class="num" id="LN1338">1338</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1339"><td class="num" id="LN1339">1339</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1340"><td class="num" id="LN1340">1340</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1341"><td class="num" id="LN1341">1341</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1342"><td class="num" id="LN1342">1342</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1343"><td class="num" id="LN1343">1343</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1344"><td class="num" id="LN1344">1344</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1345"><td class="num" id="LN1345">1345</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1346"><td class="num" id="LN1346">1346</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1347"><td class="num" id="LN1347">1347</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1348"><td class="num" id="LN1348">1348</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="1349"><td class="num" id="LN1349">1349</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1350"><td class="num" id="LN1350">1350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1351"><td class="num" id="LN1351">1351</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1352"><td class="num" id="LN1352">1352</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1353"><td class="num" id="LN1353">1353</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1354"><td class="num" id="LN1354">1354</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1355"><td class="num" id="LN1355">1355</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1356"><td class="num" id="LN1356">1356</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1357"><td class="num" id="LN1357">1357</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1358"><td class="num" id="LN1358">1358</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1359"><td class="num" id="LN1359">1359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1360"><td class="num" id="LN1360">1360</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1361"><td class="num" id="LN1361">1361</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1362"><td class="num" id="LN1362">1362</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1363"><td class="num" id="LN1363">1363</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1364"><td class="num" id="LN1364">1364</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1365"><td class="num" id="LN1365">1365</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1366"><td class="num" id="LN1366">1366</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1367"><td class="num" id="LN1367">1367</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1368"><td class="num" id="LN1368">1368</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1369"><td class="num" id="LN1369">1369</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1370"><td class="num" id="LN1370">1370</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1371"><td class="num" id="LN1371">1371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1372"><td class="num" id="LN1372">1372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1373"><td class="num" id="LN1373">1373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1374"><td class="num" id="LN1374">1374</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1375"><td class="num" id="LN1375">1375</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1376"><td class="num" id="LN1376">1376</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1377"><td class="num" id="LN1377">1377</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1378"><td class="num" id="LN1378">1378</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1379"><td class="num" id="LN1379">1379</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1380"><td class="num" id="LN1380">1380</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1381"><td class="num" id="LN1381">1381</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1382"><td class="num" id="LN1382">1382</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1383"><td class="num" id="LN1383">1383</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1384"><td class="num" id="LN1384">1384</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1385"><td class="num" id="LN1385">1385</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1386"><td class="num" id="LN1386">1386</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1387"><td class="num" id="LN1387">1387</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1388"><td class="num" id="LN1388">1388</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1389"><td class="num" id="LN1389">1389</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1390"><td class="num" id="LN1390">1390</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1391"><td class="num" id="LN1391">1391</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1392"><td class="num" id="LN1392">1392</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1393"><td class="num" id="LN1393">1393</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1394"><td class="num" id="LN1394">1394</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1395"><td class="num" id="LN1395">1395</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1396"><td class="num" id="LN1396">1396</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1397"><td class="num" id="LN1397">1397</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1398"><td class="num" id="LN1398">1398</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1399"><td class="num" id="LN1399">1399</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1400"><td class="num" id="LN1400">1400</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1401"><td class="num" id="LN1401">1401</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1402"><td class="num" id="LN1402">1402</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1403"><td class="num" id="LN1403">1403</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1404"><td class="num" id="LN1404">1404</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1405"><td class="num" id="LN1405">1405</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1406"><td class="num" id="LN1406">1406</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1407"><td class="num" id="LN1407">1407</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1408"><td class="num" id="LN1408">1408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1409"><td class="num" id="LN1409">1409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1410"><td class="num" id="LN1410">1410</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1411"><td class="num" id="LN1411">1411</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1412"><td class="num" id="LN1412">1412</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1413"><td class="num" id="LN1413">1413</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1414"><td class="num" id="LN1414">1414</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1415"><td class="num" id="LN1415">1415</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1416"><td class="num" id="LN1416">1416</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1417"><td class="num" id="LN1417">1417</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1418"><td class="num" id="LN1418">1418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1419"><td class="num" id="LN1419">1419</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1420"><td class="num" id="LN1420">1420</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1421"><td class="num" id="LN1421">1421</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1422"><td class="num" id="LN1422">1422</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1423"><td class="num" id="LN1423">1423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1424"><td class="num" id="LN1424">1424</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1425"><td class="num" id="LN1425">1425</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1426"><td class="num" id="LN1426">1426</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1427"><td class="num" id="LN1427">1427</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1428"><td class="num" id="LN1428">1428</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1429"><td class="num" id="LN1429">1429</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1430"><td class="num" id="LN1430">1430</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1431"><td class="num" id="LN1431">1431</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1432"><td class="num" id="LN1432">1432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1433"><td class="num" id="LN1433">1433</td><td class="line"> <span class='comment'>/* fully optimized (i think) - only change of algorithm can help */</span></td></tr>
<tr class="codeline" data-linenumber="1434"><td class="num" id="LN1434">1434</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1435"><td class="num" id="LN1435">1435</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1436"><td class="num" id="LN1436">1436</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1437"><td class="num" id="LN1437">1437</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1438"><td class="num" id="LN1438">1438</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1439"><td class="num" id="LN1439">1439</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1440"><td class="num" id="LN1440">1440</td><td class="line"> <span class='keyword'>int</span> r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1441"><td class="num" id="LN1441">1441</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1442"><td class="num" id="LN1442">1442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1443"><td class="num" id="LN1443">1443</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1444"><td class="num" id="LN1444">1444</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1445"><td class="num" id="LN1445">1445</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1446"><td class="num" id="LN1446">1446</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1447"><td class="num" id="LN1447">1447</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1448"><td class="num" id="LN1448">1448</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1449"><td class="num" id="LN1449">1449</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; <span class="mrange">x &lt; x_end</span>; ++x)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgEvent" style="margin-left:31ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Assuming 'x' is &lt; 'x_end'</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#EndPath" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1450"><td class="num" id="LN1450">1450</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1451"><td class="num" id="LN1451">1451</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1452"><td class="num" id="LN1452">1452</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1453"><td class="num" id="LN1453">1453</td><td class="line"> sptr = <span class="mrange">ypoints</span>[dyy + y] + xpoints[x];</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:24ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Array access (from variable 'ypoints') results in a null pointer dereference</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1454"><td class="num" id="LN1454">1454</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1455"><td class="num" id="LN1455">1455</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1456"><td class="num" id="LN1456">1456</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1457"><td class="num" id="LN1457">1457</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1458"><td class="num" id="LN1458">1458</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1459"><td class="num" id="LN1459">1459</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1460"><td class="num" id="LN1460">1460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1461"><td class="num" id="LN1461">1461</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1462"><td class="num" id="LN1462">1462</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1463"><td class="num" id="LN1463">1463</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1464"><td class="num" id="LN1464">1464</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1465"><td class="num" id="LN1465">1465</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1466"><td class="num" id="LN1466">1466</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1467"><td class="num" id="LN1467">1467</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1468"><td class="num" id="LN1468">1468</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1469"><td class="num" id="LN1469">1469</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1470"><td class="num" id="LN1470">1470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1471"><td class="num" id="LN1471">1471</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1472"><td class="num" id="LN1472">1472</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1473"><td class="num" id="LN1473">1473</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1474"><td class="num" id="LN1474">1474</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1475"><td class="num" id="LN1475">1475</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1476"><td class="num" id="LN1476">1476</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1477"><td class="num" id="LN1477">1477</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1478"><td class="num" id="LN1478">1478</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1479"><td class="num" id="LN1479">1479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1480"><td class="num" id="LN1480">1480</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1481"><td class="num" id="LN1481">1481</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1482"><td class="num" id="LN1482">1482</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1483"><td class="num" id="LN1483">1483</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1484"><td class="num" id="LN1484">1484</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1485"><td class="num" id="LN1485">1485</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1486"><td class="num" id="LN1486">1486</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1487"><td class="num" id="LN1487">1487</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1488"><td class="num" id="LN1488">1488</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1489"><td class="num" id="LN1489">1489</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1490"><td class="num" id="LN1490">1490</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1491"><td class="num" id="LN1491">1491</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1492"><td class="num" id="LN1492">1492</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1493"><td class="num" id="LN1493">1493</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1494"><td class="num" id="LN1494">1494</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1495"><td class="num" id="LN1495">1495</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1496"><td class="num" id="LN1496">1496</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1497"><td class="num" id="LN1497">1497</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1498"><td class="num" id="LN1498">1498</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1499"><td class="num" id="LN1499">1499</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1500"><td class="num" id="LN1500">1500</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1501"><td class="num" id="LN1501">1501</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1502"><td class="num" id="LN1502">1502</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1503"><td class="num" id="LN1503">1503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1504"><td class="num" id="LN1504">1504</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1505"><td class="num" id="LN1505">1505</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1506"><td class="num" id="LN1506">1506</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1507"><td class="num" id="LN1507">1507</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1508"><td class="num" id="LN1508">1508</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1509"><td class="num" id="LN1509">1509</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1510"><td class="num" id="LN1510">1510</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1511"><td class="num" id="LN1511">1511</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1512"><td class="num" id="LN1512">1512</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1513"><td class="num" id="LN1513">1513</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1514"><td class="num" id="LN1514">1514</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1515"><td class="num" id="LN1515">1515</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1516"><td class="num" id="LN1516">1516</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1517"><td class="num" id="LN1517">1517</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1518"><td class="num" id="LN1518">1518</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1519"><td class="num" id="LN1519">1519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1520"><td class="num" id="LN1520">1520</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1521"><td class="num" id="LN1521">1521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1522"><td class="num" id="LN1522">1522</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1523"><td class="num" id="LN1523">1523</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1524"><td class="num" id="LN1524">1524</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1525"><td class="num" id="LN1525">1525</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1526"><td class="num" id="LN1526">1526</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1527"><td class="num" id="LN1527">1527</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1528"><td class="num" id="LN1528">1528</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1529"><td class="num" id="LN1529">1529</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1530"><td class="num" id="LN1530">1530</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1531"><td class="num" id="LN1531">1531</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1532"><td class="num" id="LN1532">1532</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1533"><td class="num" id="LN1533">1533</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1534"><td class="num" id="LN1534">1534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1535"><td class="num" id="LN1535">1535</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1536"><td class="num" id="LN1536">1536</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1537"><td class="num" id="LN1537">1537</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1538"><td class="num" id="LN1538">1538</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1539"><td class="num" id="LN1539">1539</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1540"><td class="num" id="LN1540">1540</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1541"><td class="num" id="LN1541">1541</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1542"><td class="num" id="LN1542">1542</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1543"><td class="num" id="LN1543">1543</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1544"><td class="num" id="LN1544">1544</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1545"><td class="num" id="LN1545">1545</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1546"><td class="num" id="LN1546">1546</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1547"><td class="num" id="LN1547">1547</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1548"><td class="num" id="LN1548">1548</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1549"><td class="num" id="LN1549">1549</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1550"><td class="num" id="LN1550">1550</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL16(p)<span class='expansion'>((ushort*)(p))[3]</span></span> ((ushort*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="1551"><td class="num" id="LN1551">1551</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL16(p)<span class='expansion'>((ushort*)(p))[2]</span></span> ((ushort*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="1552"><td class="num" id="LN1552">1552</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL16(p)<span class='expansion'>((ushort*)(p))[1]</span></span> ((ushort*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="1553"><td class="num" id="LN1553">1553</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL16(p)<span class='expansion'>((ushort*)(p))[0]</span></span> ((ushort*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="1554"><td class="num" id="LN1554">1554</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1555"><td class="num" id="LN1555">1555</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1556"><td class="num" id="LN1556">1556</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1557"><td class="num" id="LN1557">1557</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1558"><td class="num" id="LN1558">1558</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1559"><td class="num" id="LN1559">1559</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1560"><td class="num" id="LN1560">1560</td><td class="line"> dimgScaleAARGB16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1561"><td class="num" id="LN1561">1561</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1562"><td class="num" id="LN1562">1562</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1563"><td class="num" id="LN1563">1563</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1564"><td class="num" id="LN1564">1564</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte*/</span></td></tr>
<tr class="codeline" data-linenumber="1565"><td class="num" id="LN1565">1565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1566"><td class="num" id="LN1566">1566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1567"><td class="num" id="LN1567">1567</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1568"><td class="num" id="LN1568">1568</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1569"><td class="num" id="LN1569">1569</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1570"><td class="num" id="LN1570">1570</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1571"><td class="num" id="LN1571">1571</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1572"><td class="num" id="LN1572">1572</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1573"><td class="num" id="LN1573">1573</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1574"><td class="num" id="LN1574">1574</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1575"><td class="num" id="LN1575">1575</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1576"><td class="num" id="LN1576">1576</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="1577"><td class="num" id="LN1577">1577</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1578"><td class="num" id="LN1578">1578</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1579"><td class="num" id="LN1579">1579</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1580"><td class="num" id="LN1580">1580</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1581"><td class="num" id="LN1581">1581</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1582"><td class="num" id="LN1582">1582</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1583"><td class="num" id="LN1583">1583</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1584"><td class="num" id="LN1584">1584</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1585"><td class="num" id="LN1585">1585</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1586"><td class="num" id="LN1586">1586</td><td class="line"> <span class='comment'>// scaling up both ways</span></td></tr>
<tr class="codeline" data-linenumber="1587"><td class="num" id="LN1587">1587</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="1588"><td class="num" id="LN1588">1588</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1589"><td class="num" id="LN1589">1589</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1590"><td class="num" id="LN1590">1590</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1591"><td class="num" id="LN1591">1591</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1592"><td class="num" id="LN1592">1592</td><td class="line"> <span class='comment'>// calculate the source line we'll scan from</span></td></tr>
<tr class="codeline" data-linenumber="1593"><td class="num" id="LN1593">1593</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1594"><td class="num" id="LN1594">1594</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1595"><td class="num" id="LN1595">1595</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1596"><td class="num" id="LN1596">1596</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1597"><td class="num" id="LN1597">1597</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1598"><td class="num" id="LN1598">1598</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1599"><td class="num" id="LN1599">1599</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1600"><td class="num" id="LN1600">1600</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1601"><td class="num" id="LN1601">1601</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1602"><td class="num" id="LN1602">1602</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1603"><td class="num" id="LN1603">1603</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1604"><td class="num" id="LN1604">1604</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1605"><td class="num" id="LN1605">1605</td><td class="line"> llong rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1606"><td class="num" id="LN1606">1606</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1607"><td class="num" id="LN1607">1607</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1608"><td class="num" id="LN1608">1608</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1609"><td class="num" id="LN1609">1609</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1610"><td class="num" id="LN1610">1610</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1611"><td class="num" id="LN1611">1611</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1612"><td class="num" id="LN1612">1612</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1613"><td class="num" id="LN1613">1613</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1614"><td class="num" id="LN1614">1614</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1615"><td class="num" id="LN1615">1615</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1616"><td class="num" id="LN1616">1616</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1617"><td class="num" id="LN1617">1617</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1618"><td class="num" id="LN1618">1618</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1619"><td class="num" id="LN1619">1619</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1620"><td class="num" id="LN1620">1620</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1621"><td class="num" id="LN1621">1621</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1622"><td class="num" id="LN1622">1622</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1623"><td class="num" id="LN1623">1623</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1624"><td class="num" id="LN1624">1624</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1625"><td class="num" id="LN1625">1625</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1626"><td class="num" id="LN1626">1626</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1627"><td class="num" id="LN1627">1627</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1628"><td class="num" id="LN1628">1628</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1629"><td class="num" id="LN1629">1629</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1630"><td class="num" id="LN1630">1630</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1631"><td class="num" id="LN1631">1631</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1632"><td class="num" id="LN1632">1632</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1633"><td class="num" id="LN1633">1633</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1634"><td class="num" id="LN1634">1634</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1635"><td class="num" id="LN1635">1635</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1636"><td class="num" id="LN1636">1636</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1637"><td class="num" id="LN1637">1637</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1638"><td class="num" id="LN1638">1638</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1639"><td class="num" id="LN1639">1639</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1640"><td class="num" id="LN1640">1640</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1641"><td class="num" id="LN1641">1641</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1642"><td class="num" id="LN1642">1642</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1643"><td class="num" id="LN1643">1643</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1644"><td class="num" id="LN1644">1644</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1645"><td class="num" id="LN1645">1645</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1646"><td class="num" id="LN1646">1646</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1647"><td class="num" id="LN1647">1647</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1648"><td class="num" id="LN1648">1648</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1649"><td class="num" id="LN1649">1649</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1650"><td class="num" id="LN1650">1650</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1651"><td class="num" id="LN1651">1651</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1652"><td class="num" id="LN1652">1652</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1653"><td class="num" id="LN1653">1653</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1654"><td class="num" id="LN1654">1654</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1655"><td class="num" id="LN1655">1655</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1656"><td class="num" id="LN1656">1656</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1657"><td class="num" id="LN1657">1657</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1658"><td class="num" id="LN1658">1658</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1659"><td class="num" id="LN1659">1659</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1660"><td class="num" id="LN1660">1660</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1661"><td class="num" id="LN1661">1661</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1662"><td class="num" id="LN1662">1662</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1663"><td class="num" id="LN1663">1663</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1664"><td class="num" id="LN1664">1664</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1665"><td class="num" id="LN1665">1665</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1666"><td class="num" id="LN1666">1666</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1667"><td class="num" id="LN1667">1667</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1668"><td class="num" id="LN1668">1668</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1669"><td class="num" id="LN1669">1669</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1670"><td class="num" id="LN1670">1670</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1671"><td class="num" id="LN1671">1671</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1672"><td class="num" id="LN1672">1672</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1673"><td class="num" id="LN1673">1673</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1674"><td class="num" id="LN1674">1674</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1675"><td class="num" id="LN1675">1675</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1676"><td class="num" id="LN1676">1676</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1677"><td class="num" id="LN1677">1677</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1678"><td class="num" id="LN1678">1678</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1679"><td class="num" id="LN1679">1679</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1680"><td class="num" id="LN1680">1680</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1681"><td class="num" id="LN1681">1681</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1682"><td class="num" id="LN1682">1682</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1683"><td class="num" id="LN1683">1683</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1684"><td class="num" id="LN1684">1684</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1685"><td class="num" id="LN1685">1685</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1686"><td class="num" id="LN1686">1686</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1687"><td class="num" id="LN1687">1687</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1688"><td class="num" id="LN1688">1688</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1689"><td class="num" id="LN1689">1689</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1690"><td class="num" id="LN1690">1690</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1691"><td class="num" id="LN1691">1691</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1692"><td class="num" id="LN1692">1692</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1693"><td class="num" id="LN1693">1693</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1694"><td class="num" id="LN1694">1694</td><td class="line"> <span class='comment'>// if we're scaling down vertically</span></td></tr>
<tr class="codeline" data-linenumber="1695"><td class="num" id="LN1695">1695</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="1696"><td class="num" id="LN1696">1696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1697"><td class="num" id="LN1697">1697</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1698"><td class="num" id="LN1698">1698</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1699"><td class="num" id="LN1699">1699</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1700"><td class="num" id="LN1700">1700</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1701"><td class="num" id="LN1701">1701</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1702"><td class="num" id="LN1702">1702</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1703"><td class="num" id="LN1703">1703</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1704"><td class="num" id="LN1704">1704</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1705"><td class="num" id="LN1705">1705</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1706"><td class="num" id="LN1706">1706</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1707"><td class="num" id="LN1707">1707</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1708"><td class="num" id="LN1708">1708</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1709"><td class="num" id="LN1709">1709</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1710"><td class="num" id="LN1710">1710</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1711"><td class="num" id="LN1711">1711</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1712"><td class="num" id="LN1712">1712</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1713"><td class="num" id="LN1713">1713</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1714"><td class="num" id="LN1714">1714</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1715"><td class="num" id="LN1715">1715</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1716"><td class="num" id="LN1716">1716</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1717"><td class="num" id="LN1717">1717</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1718"><td class="num" id="LN1718">1718</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1719"><td class="num" id="LN1719">1719</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1720"><td class="num" id="LN1720">1720</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1721"><td class="num" id="LN1721">1721</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1722"><td class="num" id="LN1722">1722</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1723"><td class="num" id="LN1723">1723</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1724"><td class="num" id="LN1724">1724</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1725"><td class="num" id="LN1725">1725</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1726"><td class="num" id="LN1726">1726</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1727"><td class="num" id="LN1727">1727</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1728"><td class="num" id="LN1728">1728</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1729"><td class="num" id="LN1729">1729</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1730"><td class="num" id="LN1730">1730</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1731"><td class="num" id="LN1731">1731</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1732"><td class="num" id="LN1732">1732</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1733"><td class="num" id="LN1733">1733</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1734"><td class="num" id="LN1734">1734</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1735"><td class="num" id="LN1735">1735</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1736"><td class="num" id="LN1736">1736</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1737"><td class="num" id="LN1737">1737</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1738"><td class="num" id="LN1738">1738</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1739"><td class="num" id="LN1739">1739</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1740"><td class="num" id="LN1740">1740</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1741"><td class="num" id="LN1741">1741</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1742"><td class="num" id="LN1742">1742</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1743"><td class="num" id="LN1743">1743</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1744"><td class="num" id="LN1744">1744</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1745"><td class="num" id="LN1745">1745</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1746"><td class="num" id="LN1746">1746</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1747"><td class="num" id="LN1747">1747</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1748"><td class="num" id="LN1748">1748</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1749"><td class="num" id="LN1749">1749</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1750"><td class="num" id="LN1750">1750</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1751"><td class="num" id="LN1751">1751</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1752"><td class="num" id="LN1752">1752</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1753"><td class="num" id="LN1753">1753</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1754"><td class="num" id="LN1754">1754</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1755"><td class="num" id="LN1755">1755</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1756"><td class="num" id="LN1756">1756</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1757"><td class="num" id="LN1757">1757</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1758"><td class="num" id="LN1758">1758</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1759"><td class="num" id="LN1759">1759</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1760"><td class="num" id="LN1760">1760</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1761"><td class="num" id="LN1761">1761</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1762"><td class="num" id="LN1762">1762</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1763"><td class="num" id="LN1763">1763</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1764"><td class="num" id="LN1764">1764</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1765"><td class="num" id="LN1765">1765</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1766"><td class="num" id="LN1766">1766</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1767"><td class="num" id="LN1767">1767</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1768"><td class="num" id="LN1768">1768</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1769"><td class="num" id="LN1769">1769</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1770"><td class="num" id="LN1770">1770</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1771"><td class="num" id="LN1771">1771</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1772"><td class="num" id="LN1772">1772</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1773"><td class="num" id="LN1773">1773</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1774"><td class="num" id="LN1774">1774</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1775"><td class="num" id="LN1775">1775</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1776"><td class="num" id="LN1776">1776</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1777"><td class="num" id="LN1777">1777</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1778"><td class="num" id="LN1778">1778</td><td class="line"> <span class='comment'>// if we're scaling down horizontally</span></td></tr>
<tr class="codeline" data-linenumber="1779"><td class="num" id="LN1779">1779</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="1780"><td class="num" id="LN1780">1780</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1781"><td class="num" id="LN1781">1781</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1782"><td class="num" id="LN1782">1782</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1783"><td class="num" id="LN1783">1783</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1784"><td class="num" id="LN1784">1784</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1785"><td class="num" id="LN1785">1785</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1786"><td class="num" id="LN1786">1786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1787"><td class="num" id="LN1787">1787</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1788"><td class="num" id="LN1788">1788</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1789"><td class="num" id="LN1789">1789</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1790"><td class="num" id="LN1790">1790</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1791"><td class="num" id="LN1791">1791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1792"><td class="num" id="LN1792">1792</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1793"><td class="num" id="LN1793">1793</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1794"><td class="num" id="LN1794">1794</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1795"><td class="num" id="LN1795">1795</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1796"><td class="num" id="LN1796">1796</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1797"><td class="num" id="LN1797">1797</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1798"><td class="num" id="LN1798">1798</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1799"><td class="num" id="LN1799">1799</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1800"><td class="num" id="LN1800">1800</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1801"><td class="num" id="LN1801">1801</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1802"><td class="num" id="LN1802">1802</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1803"><td class="num" id="LN1803">1803</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1804"><td class="num" id="LN1804">1804</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1805"><td class="num" id="LN1805">1805</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1806"><td class="num" id="LN1806">1806</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1807"><td class="num" id="LN1807">1807</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1808"><td class="num" id="LN1808">1808</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1809"><td class="num" id="LN1809">1809</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1810"><td class="num" id="LN1810">1810</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1811"><td class="num" id="LN1811">1811</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1812"><td class="num" id="LN1812">1812</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1813"><td class="num" id="LN1813">1813</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1814"><td class="num" id="LN1814">1814</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1815"><td class="num" id="LN1815">1815</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1816"><td class="num" id="LN1816">1816</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1817"><td class="num" id="LN1817">1817</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1818"><td class="num" id="LN1818">1818</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1819"><td class="num" id="LN1819">1819</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1820"><td class="num" id="LN1820">1820</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1821"><td class="num" id="LN1821">1821</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1822"><td class="num" id="LN1822">1822</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1823"><td class="num" id="LN1823">1823</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1824"><td class="num" id="LN1824">1824</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1825"><td class="num" id="LN1825">1825</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1826"><td class="num" id="LN1826">1826</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1827"><td class="num" id="LN1827">1827</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1828"><td class="num" id="LN1828">1828</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1829"><td class="num" id="LN1829">1829</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1830"><td class="num" id="LN1830">1830</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1831"><td class="num" id="LN1831">1831</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1832"><td class="num" id="LN1832">1832</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1833"><td class="num" id="LN1833">1833</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1834"><td class="num" id="LN1834">1834</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1835"><td class="num" id="LN1835">1835</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1836"><td class="num" id="LN1836">1836</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1837"><td class="num" id="LN1837">1837</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1838"><td class="num" id="LN1838">1838</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1839"><td class="num" id="LN1839">1839</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1840"><td class="num" id="LN1840">1840</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1841"><td class="num" id="LN1841">1841</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1842"><td class="num" id="LN1842">1842</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1843"><td class="num" id="LN1843">1843</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1844"><td class="num" id="LN1844">1844</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1845"><td class="num" id="LN1845">1845</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1846"><td class="num" id="LN1846">1846</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1847"><td class="num" id="LN1847">1847</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1848"><td class="num" id="LN1848">1848</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1849"><td class="num" id="LN1849">1849</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1850"><td class="num" id="LN1850">1850</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1851"><td class="num" id="LN1851">1851</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1852"><td class="num" id="LN1852">1852</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1853"><td class="num" id="LN1853">1853</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1854"><td class="num" id="LN1854">1854</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1855"><td class="num" id="LN1855">1855</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1856"><td class="num" id="LN1856">1856</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1857"><td class="num" id="LN1857">1857</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1858"><td class="num" id="LN1858">1858</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1859"><td class="num" id="LN1859">1859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1860"><td class="num" id="LN1860">1860</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1861"><td class="num" id="LN1861">1861</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1862"><td class="num" id="LN1862">1862</td><td class="line"> <span class='comment'>// fully optimized (i think) - only change of algorithm can help</span></td></tr>
<tr class="codeline" data-linenumber="1863"><td class="num" id="LN1863">1863</td><td class="line"> <span class='comment'>// if we're scaling down horizontally &amp; vertically</span></td></tr>
<tr class="codeline" data-linenumber="1864"><td class="num" id="LN1864">1864</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1865"><td class="num" id="LN1865">1865</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1866"><td class="num" id="LN1866">1866</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1867"><td class="num" id="LN1867">1867</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1868"><td class="num" id="LN1868">1868</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1869"><td class="num" id="LN1869">1869</td><td class="line"> llong r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1870"><td class="num" id="LN1870">1870</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1871"><td class="num" id="LN1871">1871</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1872"><td class="num" id="LN1872">1872</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1873"><td class="num" id="LN1873">1873</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1874"><td class="num" id="LN1874">1874</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1875"><td class="num" id="LN1875">1875</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1876"><td class="num" id="LN1876">1876</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1877"><td class="num" id="LN1877">1877</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1878"><td class="num" id="LN1878">1878</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1879"><td class="num" id="LN1879">1879</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1880"><td class="num" id="LN1880">1880</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1881"><td class="num" id="LN1881">1881</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1882"><td class="num" id="LN1882">1882</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1883"><td class="num" id="LN1883">1883</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1884"><td class="num" id="LN1884">1884</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1885"><td class="num" id="LN1885">1885</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1886"><td class="num" id="LN1886">1886</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1887"><td class="num" id="LN1887">1887</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1888"><td class="num" id="LN1888">1888</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1889"><td class="num" id="LN1889">1889</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1890"><td class="num" id="LN1890">1890</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1891"><td class="num" id="LN1891">1891</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1892"><td class="num" id="LN1892">1892</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1893"><td class="num" id="LN1893">1893</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1894"><td class="num" id="LN1894">1894</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1895"><td class="num" id="LN1895">1895</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1896"><td class="num" id="LN1896">1896</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1897"><td class="num" id="LN1897">1897</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1898"><td class="num" id="LN1898">1898</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1899"><td class="num" id="LN1899">1899</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1900"><td class="num" id="LN1900">1900</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1901"><td class="num" id="LN1901">1901</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1902"><td class="num" id="LN1902">1902</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1903"><td class="num" id="LN1903">1903</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1904"><td class="num" id="LN1904">1904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1905"><td class="num" id="LN1905">1905</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1906"><td class="num" id="LN1906">1906</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1907"><td class="num" id="LN1907">1907</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1908"><td class="num" id="LN1908">1908</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1909"><td class="num" id="LN1909">1909</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1910"><td class="num" id="LN1910">1910</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1911"><td class="num" id="LN1911">1911</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1912"><td class="num" id="LN1912">1912</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1913"><td class="num" id="LN1913">1913</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1914"><td class="num" id="LN1914">1914</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1915"><td class="num" id="LN1915">1915</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1916"><td class="num" id="LN1916">1916</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1917"><td class="num" id="LN1917">1917</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1918"><td class="num" id="LN1918">1918</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1919"><td class="num" id="LN1919">1919</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1920"><td class="num" id="LN1920">1920</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1921"><td class="num" id="LN1921">1921</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1922"><td class="num" id="LN1922">1922</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1923"><td class="num" id="LN1923">1923</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1924"><td class="num" id="LN1924">1924</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1925"><td class="num" id="LN1925">1925</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1926"><td class="num" id="LN1926">1926</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1927"><td class="num" id="LN1927">1927</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1928"><td class="num" id="LN1928">1928</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1929"><td class="num" id="LN1929">1929</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1930"><td class="num" id="LN1930">1930</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1931"><td class="num" id="LN1931">1931</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1932"><td class="num" id="LN1932">1932</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1933"><td class="num" id="LN1933">1933</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1934"><td class="num" id="LN1934">1934</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1935"><td class="num" id="LN1935">1935</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1936"><td class="num" id="LN1936">1936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1937"><td class="num" id="LN1937">1937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1938"><td class="num" id="LN1938">1938</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1939"><td class="num" id="LN1939">1939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1940"><td class="num" id="LN1940">1940</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1941"><td class="num" id="LN1941">1941</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1942"><td class="num" id="LN1942">1942</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1943"><td class="num" id="LN1943">1943</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1944"><td class="num" id="LN1944">1944</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1945"><td class="num" id="LN1945">1945</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1946"><td class="num" id="LN1946">1946</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1947"><td class="num" id="LN1947">1947</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1948"><td class="num" id="LN1948">1948</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1949"><td class="num" id="LN1949">1949</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1950"><td class="num" id="LN1950">1950</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1951"><td class="num" id="LN1951">1951</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1952"><td class="num" id="LN1952">1952</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1953"><td class="num" id="LN1953">1953</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1954"><td class="num" id="LN1954">1954</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1955"><td class="num" id="LN1955">1955</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1956"><td class="num" id="LN1956">1956</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1957"><td class="num" id="LN1957">1957</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1958"><td class="num" id="LN1958">1958</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1959"><td class="num" id="LN1959">1959</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1960"><td class="num" id="LN1960">1960</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1961"><td class="num" id="LN1961">1961</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1962"><td class="num" id="LN1962">1962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1963"><td class="num" id="LN1963">1963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1964"><td class="num" id="LN1964">1964</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1965"><td class="num" id="LN1965">1965</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1966"><td class="num" id="LN1966">1966</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1967"><td class="num" id="LN1967">1967</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1968"><td class="num" id="LN1968">1968</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1969"><td class="num" id="LN1969">1969</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1970"><td class="num" id="LN1970">1970</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1971"><td class="num" id="LN1971">1971</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1972"><td class="num" id="LN1972">1972</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1973"><td class="num" id="LN1973">1973</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1974"><td class="num" id="LN1974">1974</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1975"><td class="num" id="LN1975">1975</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1976"><td class="num" id="LN1976">1976</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1977"><td class="num" id="LN1977">1977</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1978"><td class="num" id="LN1978">1978</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1979"><td class="num" id="LN1979">1979</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1980"><td class="num" id="LN1980">1980</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1981"><td class="num" id="LN1981">1981</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1982"><td class="num" id="LN1982">1982</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow</td></tr>
<tr class="codeline" data-linenumber="1983"><td class="num" id="LN1983">1983</td><td class="line"> )</td></tr>
<tr class="codeline" data-linenumber="1984"><td class="num" id="LN1984">1984</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1985"><td class="num" id="LN1985">1985</td><td class="line"> dimgScaleAARGBA16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1986"><td class="num" id="LN1986">1986</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1987"><td class="num" id="LN1987">1987</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1988"><td class="num" id="LN1988">1988</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1989"><td class="num" id="LN1989">1989</td><td class="line"><span class='comment'>/* scale by area sampling */</span></td></tr>
<tr class="codeline" data-linenumber="1990"><td class="num" id="LN1990">1990</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1991"><td class="num" id="LN1991">1991</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1992"><td class="num" id="LN1992">1992</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1993"><td class="num" id="LN1993">1993</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1994"><td class="num" id="LN1994">1994</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1995"><td class="num" id="LN1995">1995</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1996"><td class="num" id="LN1996">1996</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1997"><td class="num" id="LN1997">1997</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1998"><td class="num" id="LN1998">1998</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1999"><td class="num" id="LN1999">1999</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2000"><td class="num" id="LN2000">2000</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2001"><td class="num" id="LN2001">2001</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="2002"><td class="num" id="LN2002">2002</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="2003"><td class="num" id="LN2003">2003</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="2004"><td class="num" id="LN2004">2004</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="2005"><td class="num" id="LN2005">2005</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="2006"><td class="num" id="LN2006">2006</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2007"><td class="num" id="LN2007">2007</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="2008"><td class="num" id="LN2008">2008</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="2009"><td class="num" id="LN2009">2009</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="2010"><td class="num" id="LN2010">2010</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="2011"><td class="num" id="LN2011">2011</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2012"><td class="num" id="LN2012">2012</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="2013"><td class="num" id="LN2013">2013</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="2014"><td class="num" id="LN2014">2014</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2015"><td class="num" id="LN2015">2015</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2016"><td class="num" id="LN2016">2016</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2017"><td class="num" id="LN2017">2017</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2018"><td class="num" id="LN2018">2018</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="2019"><td class="num" id="LN2019">2019</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2020"><td class="num" id="LN2020">2020</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="2021"><td class="num" id="LN2021">2021</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2022"><td class="num" id="LN2022">2022</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2023"><td class="num" id="LN2023">2023</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2024"><td class="num" id="LN2024">2024</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2025"><td class="num" id="LN2025">2025</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2026"><td class="num" id="LN2026">2026</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2027"><td class="num" id="LN2027">2027</td><td class="line"> llong rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2028"><td class="num" id="LN2028">2028</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2029"><td class="num" id="LN2029">2029</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2030"><td class="num" id="LN2030">2030</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2031"><td class="num" id="LN2031">2031</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2032"><td class="num" id="LN2032">2032</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2033"><td class="num" id="LN2033">2033</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2034"><td class="num" id="LN2034">2034</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2035"><td class="num" id="LN2035">2035</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2036"><td class="num" id="LN2036">2036</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2037"><td class="num" id="LN2037">2037</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2038"><td class="num" id="LN2038">2038</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2039"><td class="num" id="LN2039">2039</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2040"><td class="num" id="LN2040">2040</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2041"><td class="num" id="LN2041">2041</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2042"><td class="num" id="LN2042">2042</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2043"><td class="num" id="LN2043">2043</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2044"><td class="num" id="LN2044">2044</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2045"><td class="num" id="LN2045">2045</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2046"><td class="num" id="LN2046">2046</td><td class="line"> aa = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2047"><td class="num" id="LN2047">2047</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="2048"><td class="num" id="LN2048">2048</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2049"><td class="num" id="LN2049">2049</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2050"><td class="num" id="LN2050">2050</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2051"><td class="num" id="LN2051">2051</td><td class="line"> aa += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2052"><td class="num" id="LN2052">2052</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2053"><td class="num" id="LN2053">2053</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2054"><td class="num" id="LN2054">2054</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2055"><td class="num" id="LN2055">2055</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2056"><td class="num" id="LN2056">2056</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2057"><td class="num" id="LN2057">2057</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2058"><td class="num" id="LN2058">2058</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2059"><td class="num" id="LN2059">2059</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2060"><td class="num" id="LN2060">2060</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2061"><td class="num" id="LN2061">2061</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2062"><td class="num" id="LN2062">2062</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2063"><td class="num" id="LN2063">2063</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2064"><td class="num" id="LN2064">2064</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2065"><td class="num" id="LN2065">2065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2066"><td class="num" id="LN2066">2066</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2067"><td class="num" id="LN2067">2067</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2068"><td class="num" id="LN2068">2068</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2069"><td class="num" id="LN2069">2069</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2070"><td class="num" id="LN2070">2070</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2071"><td class="num" id="LN2071">2071</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2072"><td class="num" id="LN2072">2072</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2073"><td class="num" id="LN2073">2073</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2074"><td class="num" id="LN2074">2074</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2075"><td class="num" id="LN2075">2075</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2076"><td class="num" id="LN2076">2076</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2077"><td class="num" id="LN2077">2077</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2078"><td class="num" id="LN2078">2078</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2079"><td class="num" id="LN2079">2079</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2080"><td class="num" id="LN2080">2080</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2081"><td class="num" id="LN2081">2081</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2082"><td class="num" id="LN2082">2082</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2083"><td class="num" id="LN2083">2083</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2084"><td class="num" id="LN2084">2084</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2085"><td class="num" id="LN2085">2085</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2086"><td class="num" id="LN2086">2086</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2087"><td class="num" id="LN2087">2087</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2088"><td class="num" id="LN2088">2088</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2089"><td class="num" id="LN2089">2089</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2090"><td class="num" id="LN2090">2090</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2091"><td class="num" id="LN2091">2091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2092"><td class="num" id="LN2092">2092</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2093"><td class="num" id="LN2093">2093</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2094"><td class="num" id="LN2094">2094</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2095"><td class="num" id="LN2095">2095</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2096"><td class="num" id="LN2096">2096</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2097"><td class="num" id="LN2097">2097</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2098"><td class="num" id="LN2098">2098</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2099"><td class="num" id="LN2099">2099</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2100"><td class="num" id="LN2100">2100</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2101"><td class="num" id="LN2101">2101</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2102"><td class="num" id="LN2102">2102</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2103"><td class="num" id="LN2103">2103</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2104"><td class="num" id="LN2104">2104</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2105"><td class="num" id="LN2105">2105</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2106"><td class="num" id="LN2106">2106</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2107"><td class="num" id="LN2107">2107</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2108"><td class="num" id="LN2108">2108</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2109"><td class="num" id="LN2109">2109</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2110"><td class="num" id="LN2110">2110</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2111"><td class="num" id="LN2111">2111</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2112"><td class="num" id="LN2112">2112</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2113"><td class="num" id="LN2113">2113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2114"><td class="num" id="LN2114">2114</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2115"><td class="num" id="LN2115">2115</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2116"><td class="num" id="LN2116">2116</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2117"><td class="num" id="LN2117">2117</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2118"><td class="num" id="LN2118">2118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2119"><td class="num" id="LN2119">2119</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2120"><td class="num" id="LN2120">2120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2121"><td class="num" id="LN2121">2121</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2122"><td class="num" id="LN2122">2122</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2123"><td class="num" id="LN2123">2123</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="2124"><td class="num" id="LN2124">2124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2125"><td class="num" id="LN2125">2125</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2126"><td class="num" id="LN2126">2126</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2127"><td class="num" id="LN2127">2127</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2128"><td class="num" id="LN2128">2128</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2129"><td class="num" id="LN2129">2129</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2130"><td class="num" id="LN2130">2130</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="2131"><td class="num" id="LN2131">2131</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2132"><td class="num" id="LN2132">2132</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2133"><td class="num" id="LN2133">2133</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="2134"><td class="num" id="LN2134">2134</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2135"><td class="num" id="LN2135">2135</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2136"><td class="num" id="LN2136">2136</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="2137"><td class="num" id="LN2137">2137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2138"><td class="num" id="LN2138">2138</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2139"><td class="num" id="LN2139">2139</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2140"><td class="num" id="LN2140">2140</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2141"><td class="num" id="LN2141">2141</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2142"><td class="num" id="LN2142">2142</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2143"><td class="num" id="LN2143">2143</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2144"><td class="num" id="LN2144">2144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2145"><td class="num" id="LN2145">2145</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2146"><td class="num" id="LN2146">2146</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2147"><td class="num" id="LN2147">2147</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2148"><td class="num" id="LN2148">2148</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2149"><td class="num" id="LN2149">2149</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2150"><td class="num" id="LN2150">2150</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2151"><td class="num" id="LN2151">2151</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2152"><td class="num" id="LN2152">2152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2153"><td class="num" id="LN2153">2153</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2154"><td class="num" id="LN2154">2154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2155"><td class="num" id="LN2155">2155</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2156"><td class="num" id="LN2156">2156</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2157"><td class="num" id="LN2157">2157</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2158"><td class="num" id="LN2158">2158</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2159"><td class="num" id="LN2159">2159</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2160"><td class="num" id="LN2160">2160</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2161"><td class="num" id="LN2161">2161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2162"><td class="num" id="LN2162">2162</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2163"><td class="num" id="LN2163">2163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2164"><td class="num" id="LN2164">2164</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2165"><td class="num" id="LN2165">2165</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2166"><td class="num" id="LN2166">2166</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2167"><td class="num" id="LN2167">2167</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2168"><td class="num" id="LN2168">2168</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2169"><td class="num" id="LN2169">2169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2170"><td class="num" id="LN2170">2170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2171"><td class="num" id="LN2171">2171</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2172"><td class="num" id="LN2172">2172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2173"><td class="num" id="LN2173">2173</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="2174"><td class="num" id="LN2174">2174</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2175"><td class="num" id="LN2175">2175</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2176"><td class="num" id="LN2176">2176</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2177"><td class="num" id="LN2177">2177</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2178"><td class="num" id="LN2178">2178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2179"><td class="num" id="LN2179">2179</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2180"><td class="num" id="LN2180">2180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2181"><td class="num" id="LN2181">2181</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2182"><td class="num" id="LN2182">2182</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2183"><td class="num" id="LN2183">2183</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2184"><td class="num" id="LN2184">2184</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2185"><td class="num" id="LN2185">2185</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2186"><td class="num" id="LN2186">2186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2187"><td class="num" id="LN2187">2187</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2188"><td class="num" id="LN2188">2188</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2189"><td class="num" id="LN2189">2189</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2190"><td class="num" id="LN2190">2190</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2191"><td class="num" id="LN2191">2191</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2192"><td class="num" id="LN2192">2192</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2193"><td class="num" id="LN2193">2193</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2194"><td class="num" id="LN2194">2194</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2195"><td class="num" id="LN2195">2195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2196"><td class="num" id="LN2196">2196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2197"><td class="num" id="LN2197">2197</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2198"><td class="num" id="LN2198">2198</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2199"><td class="num" id="LN2199">2199</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2200"><td class="num" id="LN2200">2200</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2201"><td class="num" id="LN2201">2201</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2202"><td class="num" id="LN2202">2202</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2203"><td class="num" id="LN2203">2203</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2204"><td class="num" id="LN2204">2204</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2205"><td class="num" id="LN2205">2205</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2206"><td class="num" id="LN2206">2206</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2207"><td class="num" id="LN2207">2207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2208"><td class="num" id="LN2208">2208</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2209"><td class="num" id="LN2209">2209</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2210"><td class="num" id="LN2210">2210</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2211"><td class="num" id="LN2211">2211</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2212"><td class="num" id="LN2212">2212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2213"><td class="num" id="LN2213">2213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2214"><td class="num" id="LN2214">2214</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2215"><td class="num" id="LN2215">2215</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2216"><td class="num" id="LN2216">2216</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2217"><td class="num" id="LN2217">2217</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2218"><td class="num" id="LN2218">2218</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2219"><td class="num" id="LN2219">2219</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2220"><td class="num" id="LN2220">2220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2221"><td class="num" id="LN2221">2221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2222"><td class="num" id="LN2222">2222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2223"><td class="num" id="LN2223">2223</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="2224"><td class="num" id="LN2224">2224</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="2225"><td class="num" id="LN2225">2225</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2226"><td class="num" id="LN2226">2226</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2227"><td class="num" id="LN2227">2227</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="2228"><td class="num" id="LN2228">2228</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2229"><td class="num" id="LN2229">2229</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2230"><td class="num" id="LN2230">2230</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="2231"><td class="num" id="LN2231">2231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2232"><td class="num" id="LN2232">2232</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2233"><td class="num" id="LN2233">2233</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2234"><td class="num" id="LN2234">2234</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2235"><td class="num" id="LN2235">2235</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2236"><td class="num" id="LN2236">2236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2237"><td class="num" id="LN2237">2237</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2238"><td class="num" id="LN2238">2238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2239"><td class="num" id="LN2239">2239</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2240"><td class="num" id="LN2240">2240</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2241"><td class="num" id="LN2241">2241</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2242"><td class="num" id="LN2242">2242</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2243"><td class="num" id="LN2243">2243</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2244"><td class="num" id="LN2244">2244</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2245"><td class="num" id="LN2245">2245</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2246"><td class="num" id="LN2246">2246</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2247"><td class="num" id="LN2247">2247</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2248"><td class="num" id="LN2248">2248</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2249"><td class="num" id="LN2249">2249</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2250"><td class="num" id="LN2250">2250</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2251"><td class="num" id="LN2251">2251</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2252"><td class="num" id="LN2252">2252</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2253"><td class="num" id="LN2253">2253</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2254"><td class="num" id="LN2254">2254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2255"><td class="num" id="LN2255">2255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2256"><td class="num" id="LN2256">2256</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2257"><td class="num" id="LN2257">2257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2258"><td class="num" id="LN2258">2258</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2259"><td class="num" id="LN2259">2259</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2260"><td class="num" id="LN2260">2260</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2261"><td class="num" id="LN2261">2261</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2262"><td class="num" id="LN2262">2262</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2263"><td class="num" id="LN2263">2263</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2264"><td class="num" id="LN2264">2264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2265"><td class="num" id="LN2265">2265</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2266"><td class="num" id="LN2266">2266</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2267"><td class="num" id="LN2267">2267</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="2268"><td class="num" id="LN2268">2268</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2269"><td class="num" id="LN2269">2269</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2270"><td class="num" id="LN2270">2270</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2271"><td class="num" id="LN2271">2271</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2272"><td class="num" id="LN2272">2272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2273"><td class="num" id="LN2273">2273</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2274"><td class="num" id="LN2274">2274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2275"><td class="num" id="LN2275">2275</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2276"><td class="num" id="LN2276">2276</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2277"><td class="num" id="LN2277">2277</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2278"><td class="num" id="LN2278">2278</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2279"><td class="num" id="LN2279">2279</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2280"><td class="num" id="LN2280">2280</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2281"><td class="num" id="LN2281">2281</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2282"><td class="num" id="LN2282">2282</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2283"><td class="num" id="LN2283">2283</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2284"><td class="num" id="LN2284">2284</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2285"><td class="num" id="LN2285">2285</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2286"><td class="num" id="LN2286">2286</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2287"><td class="num" id="LN2287">2287</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2288"><td class="num" id="LN2288">2288</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2289"><td class="num" id="LN2289">2289</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2290"><td class="num" id="LN2290">2290</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2291"><td class="num" id="LN2291">2291</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2292"><td class="num" id="LN2292">2292</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2293"><td class="num" id="LN2293">2293</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2294"><td class="num" id="LN2294">2294</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2295"><td class="num" id="LN2295">2295</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2296"><td class="num" id="LN2296">2296</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2297"><td class="num" id="LN2297">2297</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2298"><td class="num" id="LN2298">2298</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2299"><td class="num" id="LN2299">2299</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2300"><td class="num" id="LN2300">2300</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2301"><td class="num" id="LN2301">2301</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2302"><td class="num" id="LN2302">2302</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2303"><td class="num" id="LN2303">2303</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2304"><td class="num" id="LN2304">2304</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2305"><td class="num" id="LN2305">2305</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2306"><td class="num" id="LN2306">2306</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2307"><td class="num" id="LN2307">2307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2308"><td class="num" id="LN2308">2308</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2309"><td class="num" id="LN2309">2309</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2310"><td class="num" id="LN2310">2310</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2311"><td class="num" id="LN2311">2311</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2312"><td class="num" id="LN2312">2312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2313"><td class="num" id="LN2313">2313</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2314"><td class="num" id="LN2314">2314</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2315"><td class="num" id="LN2315">2315</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2316"><td class="num" id="LN2316">2316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2317"><td class="num" id="LN2317">2317</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2318"><td class="num" id="LN2318">2318</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2319"><td class="num" id="LN2319">2319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2320"><td class="num" id="LN2320">2320</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="2321"><td class="num" id="LN2321">2321</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="2322"><td class="num" id="LN2322">2322</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="2323"><td class="num" id="LN2323">2323</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="2324"><td class="num" id="LN2324">2324</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="2325"><td class="num" id="LN2325">2325</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="2326"><td class="num" id="LN2326">2326</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2327"><td class="num" id="LN2327">2327</td><td class="line"> llong a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="2328"><td class="num" id="LN2328">2328</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="2329"><td class="num" id="LN2329">2329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2330"><td class="num" id="LN2330">2330</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2331"><td class="num" id="LN2331">2331</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2332"><td class="num" id="LN2332">2332</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2333"><td class="num" id="LN2333">2333</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2334"><td class="num" id="LN2334">2334</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2335"><td class="num" id="LN2335">2335</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2336"><td class="num" id="LN2336">2336</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2337"><td class="num" id="LN2337">2337</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2338"><td class="num" id="LN2338">2338</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2339"><td class="num" id="LN2339">2339</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2340"><td class="num" id="LN2340">2340</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2341"><td class="num" id="LN2341">2341</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2342"><td class="num" id="LN2342">2342</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2343"><td class="num" id="LN2343">2343</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2344"><td class="num" id="LN2344">2344</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2345"><td class="num" id="LN2345">2345</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2346"><td class="num" id="LN2346">2346</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2347"><td class="num" id="LN2347">2347</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2348"><td class="num" id="LN2348">2348</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2349"><td class="num" id="LN2349">2349</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2350"><td class="num" id="LN2350">2350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2351"><td class="num" id="LN2351">2351</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2352"><td class="num" id="LN2352">2352</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2353"><td class="num" id="LN2353">2353</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2354"><td class="num" id="LN2354">2354</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2355"><td class="num" id="LN2355">2355</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2356"><td class="num" id="LN2356">2356</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2357"><td class="num" id="LN2357">2357</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2358"><td class="num" id="LN2358">2358</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2359"><td class="num" id="LN2359">2359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2360"><td class="num" id="LN2360">2360</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2361"><td class="num" id="LN2361">2361</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2362"><td class="num" id="LN2362">2362</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2363"><td class="num" id="LN2363">2363</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2364"><td class="num" id="LN2364">2364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2365"><td class="num" id="LN2365">2365</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2366"><td class="num" id="LN2366">2366</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2367"><td class="num" id="LN2367">2367</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2368"><td class="num" id="LN2368">2368</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2369"><td class="num" id="LN2369">2369</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2370"><td class="num" id="LN2370">2370</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2371"><td class="num" id="LN2371">2371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2372"><td class="num" id="LN2372">2372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2373"><td class="num" id="LN2373">2373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2374"><td class="num" id="LN2374">2374</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2375"><td class="num" id="LN2375">2375</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2376"><td class="num" id="LN2376">2376</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2377"><td class="num" id="LN2377">2377</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2378"><td class="num" id="LN2378">2378</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2379"><td class="num" id="LN2379">2379</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2380"><td class="num" id="LN2380">2380</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2381"><td class="num" id="LN2381">2381</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2382"><td class="num" id="LN2382">2382</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2383"><td class="num" id="LN2383">2383</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2384"><td class="num" id="LN2384">2384</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2385"><td class="num" id="LN2385">2385</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2386"><td class="num" id="LN2386">2386</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2387"><td class="num" id="LN2387">2387</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2388"><td class="num" id="LN2388">2388</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2389"><td class="num" id="LN2389">2389</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2390"><td class="num" id="LN2390">2390</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2391"><td class="num" id="LN2391">2391</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2392"><td class="num" id="LN2392">2392</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2393"><td class="num" id="LN2393">2393</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2394"><td class="num" id="LN2394">2394</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2395"><td class="num" id="LN2395">2395</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2396"><td class="num" id="LN2396">2396</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2397"><td class="num" id="LN2397">2397</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2398"><td class="num" id="LN2398">2398</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2399"><td class="num" id="LN2399">2399</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2400"><td class="num" id="LN2400">2400</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2401"><td class="num" id="LN2401">2401</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2402"><td class="num" id="LN2402">2402</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2403"><td class="num" id="LN2403">2403</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2404"><td class="num" id="LN2404">2404</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2405"><td class="num" id="LN2405">2405</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2406"><td class="num" id="LN2406">2406</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2407"><td class="num" id="LN2407">2407</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2408"><td class="num" id="LN2408">2408</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2409"><td class="num" id="LN2409">2409</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="2410"><td class="num" id="LN2410">2410</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2411"><td class="num" id="LN2411">2411</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2412"><td class="num" id="LN2412">2412</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2413"><td class="num" id="LN2413">2413</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2414"><td class="num" id="LN2414">2414</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2415"><td class="num" id="LN2415">2415</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2416"><td class="num" id="LN2416">2416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2417"><td class="num" id="LN2417">2417</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2418"><td class="num" id="LN2418">2418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2419"><td class="num" id="LN2419">2419</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2420"><td class="num" id="LN2420">2420</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2421"><td class="num" id="LN2421">2421</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2422"><td class="num" id="LN2422">2422</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2423"><td class="num" id="LN2423">2423</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2424"><td class="num" id="LN2424">2424</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2425"><td class="num" id="LN2425">2425</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2426"><td class="num" id="LN2426">2426</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2427"><td class="num" id="LN2427">2427</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2428"><td class="num" id="LN2428">2428</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2429"><td class="num" id="LN2429">2429</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2430"><td class="num" id="LN2430">2430</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2431"><td class="num" id="LN2431">2431</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2432"><td class="num" id="LN2432">2432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2433"><td class="num" id="LN2433">2433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2434"><td class="num" id="LN2434">2434</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2435"><td class="num" id="LN2435">2435</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2436"><td class="num" id="LN2436">2436</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2437"><td class="num" id="LN2437">2437</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2438"><td class="num" id="LN2438">2438</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2439"><td class="num" id="LN2439">2439</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2440"><td class="num" id="LN2440">2440</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2441"><td class="num" id="LN2441">2441</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2442"><td class="num" id="LN2442">2442</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2443"><td class="num" id="LN2443">2443</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2444"><td class="num" id="LN2444">2444</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2445"><td class="num" id="LN2445">2445</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2446"><td class="num" id="LN2446">2446</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2447"><td class="num" id="LN2447">2447</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2448"><td class="num" id="LN2448">2448</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="2449"><td class="num" id="LN2449">2449</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2450"><td class="num" id="LN2450">2450</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-68a978.html b/static/reports/clang/master/report-b5cd2c.html
similarity index 99%
rename from static/reports/clang/master/report-68a978.html
rename to static/reports/clang/master/report-b5cd2c.html
index 3eb28476a..360c65ee4 100644
--- a/static/reports/clang/master/report-68a978.html
+++ b/static/reports/clang/master/report-b5cd2c.html
@@ -1,598 +1,598 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'command' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -->
<!-- FILENAME rajcetalker.cpp -->
<!-- FUNCTIONNAME createAlbum -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 8037eff67b67b1ab4a9de351149de074 -->
<!-- BUGLINE 133 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 2 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 133, column 1</a><br />Potential leak of memory pointed to by 'command'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name rajcetalker.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_Rajce_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce/Generic_Rajce_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtWebKitWidgets -I /usr/lib64/qt5/include/QtWebKit -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/webservices/rajce -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"129": 1, "130": 1, "131": 1, "132": 1, "133": 1, "235": 1, "236": 1, "237": 1, "239": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2011-04-12</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A tool to export items to Rajce web service</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2011 by Lukas Krejci &lt;krejci.l at centrum dot cz&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2011-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "rajcetalker.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QWidget&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QMutex&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QQueue&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QNetworkReply&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QNetworkAccessManager&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QCryptographicHash&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QXmlResultItems&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QXmlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "rajcempform.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "rajcecommand.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "digikam_version.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dmetadata.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "wstoolutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "previewloadthread.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericRajcePlugin</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='keyword'>const</span> QUrl RAJCE_URL(QLatin1String(<span class='string_literal'>"http://www.rajce.idnes.cz/liveAPI/index.php"</span>));</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> RajceTalker::Private</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> : queueAccess(QMutex::Recursive),</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> netMngr(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> reply(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QQueue&lt;RajceCommand*&gt; commandQueue;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> QMutex queueAccess;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString tmpDir;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QNetworkAccessManager* netMngr;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QNetworkReply* reply;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> RajceSession session;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">RajceTalker::RajceTalker(QWidget* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d-&gt;tmpDir = WSToolUtils::makeTemporaryDir(<span class='string_literal'>"rajce"</span>).absolutePath() + QLatin1Char('/');</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;netMngr = <span class='keyword'>new</span> QNetworkAccessManager(<span class='keyword'>this</span>);</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> connect(d-&gt;netMngr, <span class='macro'>SIGNAL(finished(QNetworkReply*))<span class='expansion'>qFlagLocation("2""finished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "84")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotFinished(QNetworkReply*))<span class='expansion'>qFlagLocation("1""slotFinished(QNetworkReply*)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "85")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">RajceTalker::~RajceTalker()</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> WSToolUtils::removeTemporaryDir(<span class='string_literal'>"rajce"</span>);</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>const</span> RajceSession&amp; RajceTalker::session() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>void</span> RajceTalker::startCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 102, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Sending command:\n"</span> &lt;&lt; command-&gt;getXml();</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> QByteArray data = command-&gt;encode();</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> QNetworkRequest netRequest(RAJCE_URL);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> netRequest.setHeader(QNetworkRequest::ContentTypeHeader, command-&gt;contentType());</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;reply = d-&gt;netMngr-&gt;post(netRequest, data);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> connect(d-&gt;reply, <span class='macro'>SIGNAL(uploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("2""uploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "111")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>SLOT(slotUploadProgress(qint64,qint64))<span class='expansion'>qFlagLocation("1""slotUploadProgress(qint64,qint64)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br> ":" "112")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> emit signalBusyStarted(command-&gt;commandType());</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"><span class='keyword'>void</span> RajceTalker::login(<span class='keyword'>const</span> QString&amp; username, <span class='keyword'>const</span> QString&amp; password)</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> LoginCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> LoginCommand(username, password);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> RajceTalker::loadAlbums()</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> AlbumListCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AlbumListCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"><span class='keyword'>void</span> RajceTalker::createAlbum(<span class='keyword'>const</span> QString&amp; name, <span class='keyword'>const</span> QString&amp; description, <span class='keyword'>bool</span> visible)</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> CreateAlbumCommand* <span class='keyword'>const</span> command = <span class="mrange"><span class='keyword'>new</span> CreateAlbumCommand(name, description, visible, d-&gt;session)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:41ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'command'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotFinished(QNetworkReply* reply)</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (reply != d-&gt;reply)</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> QString response = QString::fromUtf8(reply-&gt;readAll());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 144, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; response;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> RajceCommand* <span class='keyword'>const</span> c = d-&gt;commandQueue.head();</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> c-&gt;processResponse(response, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> RajceCommandType type = c-&gt;commandType();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>delete</span> c;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 157, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"State after command: "</span> &lt;&lt; d-&gt;session;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='comment'>// Let the users react on the command before we</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='comment'>// let the next queued command in.</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='comment'>// This enables the connected slots to read in</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='comment'>// reliable values from the state and/or</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> <span class='comment'>// clear the error state once it's handled.</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> emit signalBusyFinished(type);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> reply-&gt;deleteLater();</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='comment'>// Only dequeue the command after the above signal has been</span></td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='comment'>// emitted so that the users can queue other commands</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='comment'>// without them being started straight away in the enqueue</span></td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='comment'>// method which would happen if the command was dequed</span></td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='comment'>// before the signal and the signal was emitted in the same</span></td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='comment'>// thread (which is the case (always?)).</span></td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> d-&gt;commandQueue.dequeue();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='comment'>// see if there's something to continue with</span></td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> startCommand(d-&gt;commandQueue.head());</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>void</span> RajceTalker::logout()</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>//TODO</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"><span class='keyword'>void</span> RajceTalker::openAlbum(<span class='keyword'>const</span> RajceAlbum&amp; album)</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> OpenAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> OpenAlbumCommand(album.id, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"><span class='keyword'>void</span> RajceTalker::closeAlbum()</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;session.openAlbumToken().isEmpty())</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> CloseAlbumCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> CloseAlbumCommand(d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> emit signalBusyFinished(CloseAlbum);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"><span class='keyword'>void</span> RajceTalker::uploadPhoto(<span class='keyword'>const</span> QString&amp; path, <span class='keyword'>unsigned</span> dimension, <span class='keyword'>int</span> jpgQuality)</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> AddPhotoCommand* <span class='keyword'>const</span> command = <span class='keyword'>new</span> AddPhotoCommand(d-&gt;tmpDir, path, dimension, jpgQuality, d-&gt;session);</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> enqueueCommand(command);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"><span class='keyword'>void</span> RajceTalker::clearLastError()</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> d-&gt;session.lastErrorCode() = 0;</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> d-&gt;session.lastErrorMessage() = QLatin1String(<span class='string_literal'>""</span>);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"><span class='keyword'>void</span> RajceTalker::slotUploadProgress(qint64 bytesSent, qint64 bytesTotal)</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (bytesTotal &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>unsigned</span> percent = (<span class='keyword'>unsigned</span>)((<span class='keyword'>float</span>)bytesSent / bytesTotal * 100);</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_WEBSERVICES_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_WEBSERVICES_LOG().isDebugEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce/rajcetalker.cpp"<br>, 230, __PRETTY_FUNCTION__, DIGIKAM_WEBSERVICES_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Percent signalled: "</span> &lt;&lt; percent;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> emit signalBusyProgress(d-&gt;commandQueue.head()-&gt;commandType(), percent);</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"><span class='keyword'>void</span> RajceTalker::enqueueCommand(RajceCommand* <span class='keyword'>const</span> command)</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> (d-&gt;session.lastErrorCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> d-&gt;queueAccess.lock();</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> d-&gt;commandQueue.enqueue(command);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (d-&gt;commandQueue.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> startCommand(command);</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> d-&gt;queueAccess.unlock();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"><span class='keyword'>void</span> RajceTalker::cancelCurrentCommand()</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> <span class='keyword'>if</span> (d-&gt;reply != <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> slotFinished(d-&gt;reply);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> d-&gt;reply-&gt;abort();</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;reply = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"><span class='keyword'>void</span> RajceTalker::init(<span class='keyword'>const</span> RajceSession&amp; initialState)</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;session = initialState;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">} <span class='comment'>// namespace DigikamGenericRajcePlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-860883.html b/static/reports/clang/master/report-b8f871.html
similarity index 99%
rename from static/reports/clang/master/report-860883.html
rename to static/reports/clang/master/report-b8f871.html
index f22cdff67..a38d776ff 100644
--- a/static/reports/clang/master/report-860883.html
+++ b/static/reports/clang/master/report-b8f871.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild2.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenSaving -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 910c0a698b5863d07b4c955817841f1a -->
<!-- BUGLINE 284 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 284, column 1</a><br />Potential leak of memory pointed to by 'indirectChild2.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "95": 1, "96": 1, "97": 1, "105": 1, "106": 1, "107": 1, "248": 1, "249": 1, "250": 1, "251": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1, "259": 1, "260": 1, "262": 1, "264": 1, "265": 1, "266": 1, "267": 1, "268": 1, "269": 1, "270": 1, "272": 1, "273": 1, "274": 1, "275": 1, "276": 1, "277": 1, "278": 1, "279": 1, "281": 1, "283": 1, "284": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild2)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild2.wp.value'</td></tr></table></div></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-331fad.html b/static/reports/clang/master/report-c97217.html
similarity index 99%
rename from static/reports/clang/master/report-331fad.html
rename to static/reports/clang/master/report-c97217.html
index f46f8a660..713f80b95 100644
--- a/static/reports/clang/master/report-331fad.html
+++ b/static/reports/clang/master/report-c97217.html
@@ -1,972 +1,972 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'ptr' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp -->
<!-- FILENAME gallerygenerator.cpp -->
<!-- FUNCTIONNAME generateHTML -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT e88623f866254800f4c681cbdfe758e5 -->
<!-- BUGLINE 348 -->
<!-- BUGCOLUMN 53 -->
<!-- BUGPATHLENGTH 11 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 348, column 53</a><br />Potential leak of memory pointed to by 'ptr'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name gallerygenerator.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5 -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/lib64/qt5/include/QtXml -isystem /usr/include/KF5/KAuth -isystem /usr/include/KF5/KCoreAddons -isystem /usr/include/KF5/KService -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -isystem /usr/lib64/qt5/include/QtDBus -D Generic_HtmlGallery_Plugin_EXPORTS -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/htmlgallery/Generic_HtmlGallery_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/libxml2 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/htmlgallery -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name gallerygenerator.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5 -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/lib64/qt5/include/QtXml -isystem /usr/include/KF5/KAuth -isystem /usr/include/KF5/KCoreAddons -isystem /usr/include/KF5/KService -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -isystem /usr/lib64/qt5/include/QtDBus -D Generic_HtmlGallery_Plugin_EXPORTS -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/htmlgallery/Generic_HtmlGallery_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/libxml2 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/htmlgallery -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"99": 1, "100": 1, "101": 1, "102": 1, "104": 1, "110": 1, "111": 1, "113": 1, "116": 1, "117": 1, "118": 1, "120": 1, "126": 1, "129": 1, "130": 1, "131": 1, "133": 1, "134": 1, "135": 1, "137": 1, "142": 1, "144": 1, "150": 1, "153": 1, "154": 1, "155": 1, "156": 1, "158": 1, "161": 1, "162": 1, "164": 1, "170": 1, "172": 1, "176": 1, "177": 1, "179": 1, "233": 1, "300": 1, "301": 1, "302": 1, "304": 1, "305": 1, "306": 1, "308": 1, "314": 1, "315": 1, "317": 1, "324": 1, "325": 1, "326": 1, "328": 1, "329": 1, "330": 1, "331": 1, "333": 1, "341": 1, "345": 1, "346": 1, "348": 1, "440": 1, "441": 1, "442": 1, "443": 1, "444": 1, "445": 1, "446": 1, "448": 1, "449": 1, "450": 1, "451": 1, "452": 1, "453": 1, "454": 1, "455": 1, "456": 1, "457": 1, "458": 1, "459": 1, "460": 1, "461": 1, "462": 1, "463": 1, "464": 1, "465": 1, "538": 1, "539": 1, "540": 1, "574": 1, "575": 1, "576": 1, "579": 1, "580": 1, "582": 1, "585": 1, "588": 1, "591": 1, "593": 1}, "8": {"911": 1, "912": 1, "913": 1, "915": 1}, "327": {"98": 1, "99": 1, "100": 1, "177": 1, "178": 1, "179": 1, "180": 1, "181": 1, "182": 1, "183": 1, "184": 1, "185": 1, "186": 1, "187": 1, "188": 1, "189": 1, "193": 1, "194": 1, "195": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4811": {"109": 1, "110": 1, "111": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "6557": {"53": 1, "55": 1, "88": 1}, "11319": {"79": 1, "94": 1, "105": 1, "109": 1, "110": 1, "111": 1, "112": 1, "116": 1, "117": 1, "118": 1, "120": 1, "125": 1, "131": 1, "207": 1, "208": 1, "209": 1, "249": 1, "250": 1, "251": 1, "252": 1, "253": 1, "269": 1, "270": 1, "271": 1, "272": 1, "273": 1, "274": 1, "422": 1, "423": 1, "424": 1, "426": 1, "427": 1, "428": 1, "429": 1, "444": 1, "445": 1, "446": 1, "447": 1}, "19238": {"306": 1, "308": 1, "310": 1, "312": 1, "315": 1, "339": 1, "340": 1, "341": 1, "342": 1, "343": 1, "345": 1, "346": 1, "347": 1, "348": 1, "349": 1, "390": 1, "391": 1, "459": 1, "460": 1, "461": 1, "462": 1, "463": 1, "464": 1, "467": 1, "502": 1, "503": 1, "504": 1, "505": 1}, "21111": {"62": 1}, "25806": {"102": 1}, "28153": {"69": 1}, "28902": {"1338": 1, "1339": 1, "1340": 1}, "29257": {"61": 1}, "30513": {"49": 1, "50": 1, "51": 1, "55": 1, "56": 1, "57": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "70": 1, "71": 1, "72": 1, "95": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2006-04-04</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a tool to generate HTML image galleries</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2010 by Aurelien Gateau &lt;aurelien dot gateau at free dot fr&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2012-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "gallerygenerator.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QDir&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QFutureWatcher&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QRegExp&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QStringList&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QtConcurrentMap&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QApplication&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QUrl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QList&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QTemporaryFile&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include &lt;klocalizedstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='comment'>// libxslt includes</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include &lt;libxslt/transform.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include &lt;libxslt/xsltutils.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include &lt;libxslt/xslt.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include &lt;libexslt/exslt.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='directive'>#include "abstractthemeparameter.h"</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='directive'>#include "galleryelement.h"</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='directive'>#include "galleryelementfunctor.h"</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='directive'>#include "galleryinfo.h"</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class='directive'>#include "gallerytheme.h"</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='directive'>#include "galleryxmlutils.h"</span></td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='directive'>#include "htmlwizard.h"</span></td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"><span class='directive'>#include "dfileoperations.h"</span></td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericHtmlGalleryPlugin</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"><span class='keyword'>typedef</span> QMap&lt;QByteArray, QByteArray&gt; XsltParameterMap;</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> GalleryGenerator::Private</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> <span class='comment'>// Url =&gt; local temp path</span></td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='keyword'>typedef</span> QHash&lt;QUrl, QString&gt; RemoteUrlHash;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> : that(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> info(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> warnings(<span class='keyword'>false</span>),</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> cancel(<span class='keyword'>false</span>),</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> pview(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> pbar(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> GalleryGenerator* that;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> GalleryInfo* info;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> GalleryTheme::Ptr theme;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='comment'>// State info</span></td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='keyword'>bool</span> warnings;</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> QString xmlFileName;</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='keyword'>bool</span> cancel;</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> DHistoryView* pview;</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> DProgressWdg* pbar;</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>bool</span> init()</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> cancel = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> theme = GalleryTheme::findByInternalName(info-&gt;theme());</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='keyword'>if</span> (!theme)</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> logError( <span class='macro'>i18n(<span class='string_literal'>"Could not find theme in '%1'"</span>, info-&gt;theme())<span class='expansion'>i18nd("digikam", "Could not find theme in '%1'", info-&gt;theme<br>())</span></span> );</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> pview-&gt;setVisible(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> pbar-&gt;setVisible(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>bool</span> createDir(<span class='keyword'>const</span> QString&amp; dirName)</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> logInfo(<span class='macro'>i18n(<span class='string_literal'>"Create directories"</span>)<span class='expansion'>i18nd("digikam", "Create directories")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> <span class='keyword'>if</span> (!QDir().mkpath(dirName))</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not create folder '%1'"</span>, QDir::toNativeSeparators(dirName))<span class='expansion'>i18nd("digikam", "Could not create folder '%1'", QDir::toNativeSeparators<br>(dirName))</span></span>);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='keyword'>bool</span> copyTheme()</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> logInfo(<span class='macro'>i18n(<span class='string_literal'>"Copying theme"</span>)<span class='expansion'>i18nd("digikam", "Copying theme")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> QUrl srcUrl = QUrl::fromLocalFile(theme-&gt;directory());</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> QUrl destUrl = info-&gt;destUrl().adjusted(QUrl::StripTrailingSlash);</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> QDir themeDir(destUrl.toLocalFile() + QLatin1Char('/') + srcUrl.fileName());</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>if</span> (themeDir.exists())</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> themeDir.removeRecursively();</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>bool</span> ok = DFileOperations::copyFolderRecursively(srcUrl.toLocalFile(), destUrl.toLocalFile());</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='keyword'>if</span> (!ok)</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not copy theme"</span>)<span class='expansion'>i18nd("digikam", "Could not copy theme")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>bool</span> generateImagesAndXML()</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> logInfo(<span class='macro'>i18n(<span class='string_literal'>"Generate images and XML files"</span>)<span class='expansion'>i18nd("digikam", "Generate images and XML files")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> QString baseDestDir = info-&gt;destUrl().toLocalFile();</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='keyword'>if</span> (!createDir(baseDestDir))</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> xmlFileName = baseDestDir + QLatin1String(<span class='string_literal'>"/gallery.xml"</span>);</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> XMLWriter xmlWriter;</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>if</span> (!xmlWriter.open(xmlFileName))</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not create gallery.xml"</span>)<span class='expansion'>i18nd("digikam", "Could not create gallery.xml")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> XMLElement collectionsX(xmlWriter, QLatin1String(<span class='string_literal'>"collections"</span>));</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>if</span> (info-&gt;m_getOption == GalleryInfo::ALBUMS)</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='comment'>// Loop over albums selection</span></td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> DInfoInterface::DAlbumIDs::ConstIterator albumIt = info-&gt;m_albumList.constBegin();</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> DInfoInterface::DAlbumIDs::ConstIterator albumEnd = info-&gt;m_albumList.constEnd();</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='keyword'>for</span> (; albumIt != albumEnd ; ++albumIt)</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>int</span> id = *albumIt;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> DInfoInterface::DInfoMap inf;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>if</span> (info-&gt;m_iface)</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> inf = info-&gt;m_iface-&gt;albumInfo(id);</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> DAlbumInfo anf(inf);</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> QString title = anf.title();</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> QString collectionFileName = webifyFileName(title);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QString destDir = baseDestDir + QLatin1Char('/') + collectionFileName;</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>if</span> (!createDir(destDir))</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> XMLElement collectionX(xmlWriter, QLatin1String(<span class='string_literal'>"collection"</span>));</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> xmlWriter.writeElement(<span class='string_literal'>"name"</span>, title);</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> xmlWriter.writeElement(<span class='string_literal'>"fileName"</span>, collectionFileName);</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> xmlWriter.writeElement(<span class='string_literal'>"comment"</span>, anf.caption());</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='comment'>// Gather image element list</span></td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> QList&lt;QUrl&gt; imageList;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='keyword'>if</span> (info-&gt;m_iface)</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> imageList = info-&gt;m_iface-&gt;albumsItems(DInfoInterface::DAlbumIDs() &lt;&lt; id);</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='keyword'>if</span> (!processImages(xmlWriter, imageList, title, destDir))</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QString title = info-&gt;imageSelectionTitle();</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QString collectionFileName = webifyFileName(title);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QString destDir = baseDestDir + QLatin1Char('/') + collectionFileName;</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>if</span> (!createDir(destDir))</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> XMLElement collectionX(xmlWriter, QLatin1String(<span class='string_literal'>"collection"</span>));</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> xmlWriter.writeElement(<span class='string_literal'>"name"</span>, title);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> xmlWriter.writeElement(<span class='string_literal'>"fileName"</span>, collectionFileName);</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='keyword'>if</span> (!processImages(xmlWriter, info-&gt;m_imageList, title, destDir))</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>bool</span> processImages(XMLWriter&amp; xmlWriter, <span class='keyword'>const</span> QList&lt;QUrl&gt;&amp; imageList,</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>const</span> QString&amp; title, <span class='keyword'>const</span> QString&amp; destDir)</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> RemoteUrlHash remoteUrlHash;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>if</span> (!downloadRemoteUrls(title, imageList, &amp;remoteUrlHash))</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> QList&lt;GalleryElement&gt; imageElementList;</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> QUrl&amp; url, imageList)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(imageList<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const QUrl<br>&amp; url = *_container_.i; _container_.control; _container_.<br>control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='keyword'>const</span> QString path = remoteUrlHash.value(url, url.toLocalFile());</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> <span class='keyword'>if</span> (path.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> <span class='keyword'>continue</span>;</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> DInfoInterface::DInfoMap inf;</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>if</span> (info-&gt;m_iface)</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> inf = info-&gt;m_iface-&gt;itemInfo(url);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> GalleryElement element = GalleryElement(inf);</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> element.m_path = remoteUrlHash.value(url, url.toLocalFile());</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> imageElementList &lt;&lt; element;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class='comment'>// Generate images</span></td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> logInfo(<span class='macro'>i18n(<span class='string_literal'>"Generating files for \"%1\""</span>, title)<span class='expansion'>i18nd("digikam", "Generating files for \"%1\"", title)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> GalleryElementFunctor functor(that, info, destDir);</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> QFuture&lt;<span class='keyword'>void</span>&gt; future = QtConcurrent::map(imageElementList, functor);</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> QFutureWatcher&lt;<span class='keyword'>void</span>&gt; watcher;</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> watcher.setFuture(future);</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> connect(&amp;watcher, <span class='macro'>SIGNAL(progressValueChanged(<span class='keyword'>int</span>))<span class='expansion'>qFlagLocation("2""progressValueChanged(int)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br> ":" "274")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> pbar, <span class='macro'>SLOT(setValue(<span class='keyword'>int</span>))<span class='expansion'>qFlagLocation("1""setValue(int)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br> ":" "275")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> pbar-&gt;setMaximum(imageElementList.count());</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class='keyword'>while</span> (!future.isFinished())</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class='macro'>qApp<span class='expansion'>(static_cast&lt;QApplication *&gt;(QCoreApplication::instance<br>()))</span></span>-&gt;processEvents();</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>if</span> (cancel)</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> future.cancel();</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> future.waitForFinished();</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> <span class='comment'>// Generate xml</span></td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> GalleryElement&amp; element, imageElementList)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(imageElementList<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const GalleryElement<br>&amp; element = *_container_.i; _container_.control; _container_<br>.control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> element.appendToXML(xmlWriter, info-&gt;copyOriginalImage());</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='keyword'>bool</span> generateHTML()</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> logInfo(<span class='macro'>i18n(<span class='string_literal'>"Generating HTML files"</span>)<span class='expansion'>i18nd("digikam", "Generating HTML files")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> QString xsltFileName = theme-&gt;directory() + QLatin1String(<span class='string_literal'>"/template.xsl"</span>);</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> CWrapper&lt;xsltStylesheetPtr, xsltFreeStylesheet&gt; xslt = xsltParseStylesheetFile((<span class='keyword'>const</span> xmlChar*)</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> QDir::toNativeSeparators(xsltFileName).toUtf8().data());</td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='keyword'>if</span> (!xslt)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not load XSL file '%1'"</span>, xsltFileName)<span class='expansion'>i18nd("digikam", "Could not load XSL file '%1'", xsltFileName<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> CWrapper&lt;xmlDocPtr, xmlFreeDoc&gt; xmlGallery =</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> xmlParseFile(QDir::toNativeSeparators(xmlFileName).toUtf8().data() );</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> <span class='keyword'>if</span> (!xmlGallery)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not load XML file '%1'"</span>, xmlFileName)<span class='expansion'>i18nd("digikam", "Could not load XML file '%1'", xmlFileName)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> <span class='comment'>// Prepare parameters</span></td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> XsltParameterMap map;</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> addI18nParameters(map);</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> addThemeParameters(map);</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span>** params = <span class="mrange"><span class='keyword'>new</span> <span class='keyword'>const</span> <span class='keyword'>char</span>*[map.size()*2+1]</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:42ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> XsltParameterMap::Iterator it = map.begin();</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> XsltParameterMap::Iterator end = map.end();</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>char</span>** ptr = params;</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> <span class='keyword'>for</span> ( ; it != end ; ++it)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 341</td><td><div class="PathNav"><a href="#EndPath" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> *ptr = it.key().data();</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> ++ptr;</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> *ptr = it.value().data();</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> ++ptr;</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> *ptr = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> <span class='comment'>// Move to the destination dir, so that external documents get correctly</span></td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> <span class='comment'>// produced</span></td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> QString oldCD = QDir::currentPath();</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> QDir::setCurrent(info-&gt;destUrl().toLocalFile());</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> CWrapper&lt;xmlDocPtr, xmlFreeDoc&gt; xmlOutput = xsltApplyStylesheet(xslt, xmlGallery, params);</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:53ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'ptr'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> QDir::setCurrent(oldCD);</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> <span class='comment'>//delete []params;</span></td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> <span class='keyword'>if</span> (!xmlOutput)</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Error processing XML file"</span>)<span class='expansion'>i18nd("digikam", "Error processing XML file")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> QString destFileName = QDir::toNativeSeparators(info-&gt;destUrl().toLocalFile() + </td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> QLatin1String(<span class='string_literal'>"/index.html"</span>));</td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> <span class='keyword'>if</span> (xsltSaveResultToFilename(destFileName.toUtf8().data(), xmlOutput, xslt, 0) == -1)</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not open '%1' for writing"</span>, destFileName)<span class='expansion'>i18nd("digikam", "Could not open '%1' for writing", destFileName<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> <span class='keyword'>bool</span> downloadRemoteUrls(<span class='keyword'>const</span> QString&amp; collectionName,</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> <span class='keyword'>const</span> QList&lt;QUrl&gt;&amp; _list,</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> RemoteUrlHash* <span class='keyword'>const</span> hash)</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> <span class='macro'>Q_ASSERT(hash)<span class='expansion'>((hash) ? static_cast&lt;void&gt;(0) : qt_assert("hash", "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br>, 375))</span></span>;</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> QList&lt;QUrl&gt; list;</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> QUrl&amp; url, _list)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(_list<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const QUrl<br>&amp; url = *_container_.i; _container_.control; _container_.<br>control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> <span class='keyword'>if</span> (!url.isLocalFile())</td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> list &lt;&lt; url;</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> <span class='keyword'>if</span> (list.count() == 0)</td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> logInfo(<span class='macro'>i18n(<span class='string_literal'>"Downloading remote files for \"%1\""</span>, collectionName)<span class='expansion'>i18nd("digikam", "Downloading remote files for \"%1\"", collectionName<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> pbar-&gt;setMaximum(list.count());</td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> <span class='keyword'>int</span> count = 0;</td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> <span class='macro'>foreach(<span class='keyword'>const</span> QUrl&amp; url, list)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(list<br>); _container_.control &amp;&amp; _container_.i != _container_<br>.e; ++_container_.i, _container_.control ^= 1) for (const QUrl<br>&amp; url = *_container_.i; _container_.control; _container_.<br>control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> <span class='keyword'>if</span> (cancel)</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> QTemporaryFile tempFile;</td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> tempFile.setFileTemplate(QLatin1String(<span class='string_literal'>"htmlgallery-"</span>));</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> <span class='keyword'>if</span> (!tempFile.open())</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> logError(<span class='macro'>i18n(<span class='string_literal'>"Could not open temporary file"</span>)<span class='expansion'>i18nd("digikam", "Could not open temporary file")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> QTemporaryFile tempPath;</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> tempPath.setFileTemplate(tempFile.fileName());</td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> tempPath.setAutoRemove(<span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> <span class='keyword'>if</span> (tempPath.open() &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> DFileOperations::copyFiles(QStringList() &lt;&lt; url.toLocalFile(), tempPath.fileName()))</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> hash-&gt;insert(url, tempFile.fileName());</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> logWarning(<span class='macro'>i18n(<span class='string_literal'>"Could not download %1"</span>, url.toDisplayString())<span class='expansion'>i18nd("digikam", "Could not download %1", url.toDisplayString<br>())</span></span>);</td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> hash-&gt;insert(url, QString());</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> tempPath.close();</td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> tempFile.close();</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> ++count;</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> pbar-&gt;setValue(count);</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> <span class='comment'>* Add to map all the i18n parameters.</span></td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> <span class='keyword'>void</span> addI18nParameters(XsltParameterMap&amp; map)</td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> map[<span class='string_literal'>"i18nPrevious"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Previous"</span>)<span class='expansion'>i18nd("digikam", "Previous")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> map[<span class='string_literal'>"i18nNext"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Next"</span>)<span class='expansion'>i18nd("digikam", "Next")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> map[<span class='string_literal'>"i18nCollectionList"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Album List"</span>)<span class='expansion'>i18nd("digikam", "Album List")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> map[<span class='string_literal'>"i18nOriginalImage"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Original Image"</span>)<span class='expansion'>i18nd("digikam", "Original Image")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> map[<span class='string_literal'>"i18nUp"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Go Up"</span>)<span class='expansion'>i18nd("digikam", "Go Up")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> <span class='comment'>// Exif Tag</span></td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> map[<span class='string_literal'>"i18nexifimagemake"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Make"</span>)<span class='expansion'>i18nd("digikam", "Make")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> map[<span class='string_literal'>"i18nexifimagemodel"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Model"</span>)<span class='expansion'>i18nd("digikam", "Model")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> map[<span class='string_literal'>"i18nexifimageorientation"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Image Orientation"</span>)<span class='expansion'>i18nd("digikam", "Image Orientation")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> map[<span class='string_literal'>"i18nexifimagexresolution"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Image X Resolution"</span>)<span class='expansion'>i18nd("digikam", "Image X Resolution")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> map[<span class='string_literal'>"i18nexifimageyresolution"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Image Y Resolution"</span>)<span class='expansion'>i18nd("digikam", "Image Y Resolution")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> map[<span class='string_literal'>"i18nexifimageresolutionunit"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Image Resolution Unit"</span>)<span class='expansion'>i18nd("digikam", "Image Resolution Unit")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> map[<span class='string_literal'>"i18nexifimagedatetime"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Image Date Time"</span>)<span class='expansion'>i18nd("digikam", "Image Date Time")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> map[<span class='string_literal'>"i18nexifimageycbcrpositioning"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"YCBCR Positioning"</span>)<span class='expansion'>i18nd("digikam", "YCBCR Positioning")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> map[<span class='string_literal'>"i18nexifphotoexposuretime"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Exposure Time"</span>)<span class='expansion'>i18nd("digikam", "Exposure Time")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"> map[<span class='string_literal'>"i18nexifphotofnumber"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"F Number"</span>)<span class='expansion'>i18nd("digikam", "F Number")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> map[<span class='string_literal'>"i18nexifphotoexposureprogram"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Exposure Index"</span>)<span class='expansion'>i18nd("digikam", "Exposure Index")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> map[<span class='string_literal'>"i18nexifphotoisospeedratings"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"ISO Speed Ratings"</span>)<span class='expansion'>i18nd("digikam", "ISO Speed Ratings")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> map[<span class='string_literal'>"i18nexifphotoshutterspeedvalue"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Shutter Speed Value"</span>)<span class='expansion'>i18nd("digikam", "Shutter Speed Value")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> map[<span class='string_literal'>"i18nexifphotoaperturevalue"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Aperture Value"</span>)<span class='expansion'>i18nd("digikam", "Aperture Value")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> map[<span class='string_literal'>"i18nexifphotofocallength"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"Focal Length"</span>)<span class='expansion'>i18nd("digikam", "Focal Length")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> map[<span class='string_literal'>"i18nexifgpsaltitude"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"GPS Altitude"</span>)<span class='expansion'>i18nd("digikam", "GPS Altitude")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> map[<span class='string_literal'>"i18nexifgpslatitude"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"GPS Latitude"</span>)<span class='expansion'>i18nd("digikam", "GPS Latitude")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> map[<span class='string_literal'>"i18nexifgpslongitude"</span>] = makeXsltParam(<span class='macro'>i18n(<span class='string_literal'>"GPS Longitude"</span>)<span class='expansion'>i18nd("digikam", "GPS Longitude")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> <span class='comment'>* Add to map all the theme parameters, as specified by the user.</span></td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>void</span> addThemeParameters(XsltParameterMap&amp; map)</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> GalleryTheme::ParameterList parameterList = theme-&gt;parameterList();</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> QString themeInternalName = theme-&gt;internalName();</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> GalleryTheme::ParameterList::ConstIterator it = parameterList.constBegin();</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> GalleryTheme::ParameterList::ConstIterator end = parameterList.constEnd();</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> <span class='keyword'>for</span> (; it != end ; ++it)</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> AbstractThemeParameter* <span class='keyword'>const</span> themeParameter = *it;</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> QByteArray internalName = themeParameter-&gt;internalName();</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> QString value = info-&gt;getThemeParameterValue(themeInternalName,</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> QLatin1String(internalName),</td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> themeParameter-&gt;defaultValue());</td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> map[internalName] = makeXsltParam(value);</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> <span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> <span class='comment'>* Prepare an XSLT param, managing quote mess.</span></td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> <span class='comment'>* abc =&gt; 'abc'</span></td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> <span class='comment'>* a"bc =&gt; 'a"bc'</span></td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> <span class='comment'>* a'bc =&gt; "a'bc"</span></td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> <span class='comment'>* a"'bc =&gt; concat('a"', "'", 'bc')</span></td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> QByteArray makeXsltParam(<span class='keyword'>const</span> QString&amp; txt)</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> QString param;</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> <span class='keyword'>char</span> apos = '\'';</td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> <span class='keyword'>char</span> quote = '"';</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> <span class='keyword'>if</span> (txt.indexOf(QLatin1Char(apos)) == -1)</td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='comment'>// First or second case: no apos</span></td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> param = QLatin1Char(apos) + txt + QLatin1Char(apos);</td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (txt.indexOf(QLatin1Char(quote)) == -1)</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> <span class='comment'>// Third case: only apos, no quote</span></td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> param = QLatin1Char(quote) + txt + QLatin1Char(quote);</td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> <span class='comment'>// Forth case: both apos and quote :-(</span></td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> <span class='keyword'>const</span> QStringList lst = txt.split(QLatin1Char(apos), QString::KeepEmptyParts);</td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> QStringList::ConstIterator it = lst.constBegin();</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> QStringList::ConstIterator end = lst.constEnd();</td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> param = QLatin1String(<span class='string_literal'>"concat("</span>);</td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> param += QLatin1Char(apos) + *it + QLatin1Char(apos);</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> ++it;</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> <span class='keyword'>for</span> (; it != end ; ++it)</td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> param += QLatin1String(<span class='string_literal'>", \"'\", "</span>);</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> param += QLatin1Char(apos) + *it + QLatin1Char(apos);</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> param += QLatin1Char(')');</td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> <span class='comment'>//qCDebug(DIGIKAM_DPLUGIN_GENERIC_LOG) &lt;&lt; "param: " &lt;&lt; txt &lt;&lt; " =&gt; " &lt;&lt; param;</span></td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> <span class='keyword'>return</span> param.toUtf8();</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> <span class='keyword'>void</span> logInfo(<span class='keyword'>const</span> QString&amp; msg)</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> pview-&gt;addEntry(msg, DHistoryView::ProgressEntry);</td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> <span class='keyword'>void</span> logError(<span class='keyword'>const</span> QString&amp; msg)</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> pview-&gt;addEntry(msg, DHistoryView::ErrorEntry);</td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>void</span> logWarning(<span class='keyword'>const</span> QString&amp; msg)</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> pview-&gt;addEntry(msg, DHistoryView::WarningEntry);</td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> warnings = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"><span class='comment'>// ----------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line">GalleryGenerator::GalleryGenerator(GalleryInfo* <span class='keyword'>const</span> info)</td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> : QObject(),</td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> d-&gt;that = <span class='keyword'>this</span>;</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> d-&gt;info = info;</td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> d-&gt;warnings = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> connect(<span class='keyword'>this</span>, <span class='macro'>SIGNAL(logWarningRequested(QString))<span class='expansion'>qFlagLocation("2""logWarningRequested(QString)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br> ":" "565")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> <span class='macro'>SLOT(logWarning(QString))<span class='expansion'>qFlagLocation("1""logWarning(QString)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br> ":" "566")</span></span>, Qt::QueuedConnection);</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line">GalleryGenerator::~GalleryGenerator()</td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"><span class='keyword'>bool</span> GalleryGenerator::run()</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;init())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">1</div></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> QString destDir = d-&gt;info-&gt;destUrl().toLocalFile();</td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DPLUGIN_GENERIC_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DPLUGIN_GENERIC_LOG()<br>.isDebugEnabled(); qt_category_enabled; qt_category_enabled =<br> false) QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br>, 580, __PRETTY_FUNCTION__, DIGIKAM_DPLUGIN_GENERIC_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; destDir;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 582</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;createDir(destDir))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;copyTheme())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;generateImagesAndXML())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> exsltRegisterAll();</td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> <span class='keyword'>bool</span> result = <span class="mrange">d-&gt;generateHTML()</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:19ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Calling 'Private::generateHTML'</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> xsltCleanupGlobals();</td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line"> xmlCleanupParser();</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"><span class='keyword'>bool</span> GalleryGenerator::warnings() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> <span class='keyword'>return</span> d-&gt;warnings;</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"><span class='keyword'>void</span> GalleryGenerator::logWarning(<span class='keyword'>const</span> QString&amp; text)</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> d-&gt;logWarning(text);</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"><span class='keyword'>void</span> GalleryGenerator::slotCancel()</td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> d-&gt;cancel = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"><span class='keyword'>void</span> GalleryGenerator::setProgressWidgets(DHistoryView* <span class='keyword'>const</span> pView, DProgressWdg* <span class='keyword'>const</span> pBar)</td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> d-&gt;pview = pView;</td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> d-&gt;pbar = pBar;</td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> connect(d-&gt;pbar, <span class='macro'>SIGNAL(signalProgressCanceled())<span class='expansion'>qFlagLocation("2""signalProgressCanceled()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br> ":" "621")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotCancel())<span class='expansion'>qFlagLocation("1""slotCancel()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator/gallerygenerator.cpp"<br> ":" "622")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line">QString GalleryGenerator::webifyFileName(<span class='keyword'>const</span> QString&amp; fname)</td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> QString fileName = fname.toLower();</td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> <span class='comment'>// Remove potentially troublesome chars</span></td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> <span class='keyword'>return</span> fileName.replace(QRegExp(QLatin1String(<span class='string_literal'>"[^-0-9a-z]+"</span>)), QLatin1String(<span class='string_literal'>"_"</span>));</td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line">} <span class='comment'>// namespace DigikamGenericHtmlGalleryPlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-d65b25.html b/static/reports/clang/master/report-d38318.html
similarity index 99%
rename from static/reports/clang/master/report-d65b25.html
rename to static/reports/clang/master/report-d38318.html
index f84d2fcc1..bea6fa851 100644
--- a/static/reports/clang/master/report-d65b25.html
+++ b/static/reports/clang/master/report-d38318.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild1.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenSaving -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 5ee8b92006a8c59af2b3017af967e245 -->
<!-- BUGLINE 284 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 284, column 1</a><br />Potential leak of memory pointed to by 'indirectChild1.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "95": 1, "96": 1, "97": 1, "105": 1, "106": 1, "107": 1, "248": 1, "249": 1, "250": 1, "251": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1, "259": 1, "260": 1, "262": 1, "264": 1, "265": 1, "266": 1, "267": 1, "268": 1, "269": 1, "270": 1, "272": 1, "273": 1, "274": 1, "275": 1, "276": 1, "277": 1, "278": 1, "279": 1, "281": 1, "283": 1, "284": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild1)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild1.wp.value'</td></tr></table></div></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-311679.html b/static/reports/clang/master/report-d676e3.html
similarity index 91%
rename from static/reports/clang/master/report-311679.html
rename to static/reports/clang/master/report-d676e3.html
index 0af640d3c..1fd6fe92d 100644
--- a/static/reports/clang/master/report-311679.html
+++ b/static/reports/clang/master/report-d676e3.html
@@ -1,1097 +1,1099 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Division by zero -->
<!-- BUGTYPE Division by zero -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp -->
<!-- FILENAME dimgtiffloader_load.cpp -->
<!-- FUNCTIONNAME load -->
-<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 1ac4675d1070d056887d355d5984d910 -->
+<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 72b6eab7e1890d29795ce2e313912dd0 -->
-<!-- BUGLINE 525 -->
+<!-- BUGLINE 526 -->
-<!-- BUGCOLUMN 37 -->
+<!-- BUGCOLUMN 36 -->
-<!-- BUGPATHLENGTH 52 -->
+<!-- BUGPATHLENGTH 53 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp</td></tr>
-<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 525, column 37</a><br />Division by zero</td></tr>
+<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 526, column 36</a><br />Division by zero</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimgtiffloader_load.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -D DImg_TIFF_Plugin_EXPORTS -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CORE_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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff/DImg_TIFF_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimgtiffloader_load.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -D DImg_TIFF_Plugin_EXPORTS -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CORE_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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff/DImg_TIFF_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/tiff -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
-var relevant_lines = {"1": {"50": 1, "51": 1, "52": 1, "61": 1, "64": 1, "69": 1, "71": 1, "78": 1, "86": 1, "87": 1, "88": 1, "89": 1, "90": 1, "91": 1, "92": 1, "93": 1, "95": 1, "96": 1, "98": 1, "99": 1, "100": 1, "102": 1, "111": 1, "116": 1, "117": 1, "118": 1, "138": 1, "140": 1, "155": 1, "157": 1, "164": 1, "165": 1, "166": 1, "196": 1, "202": 1, "205": 1, "207": 1, "217": 1, "239": 1, "241": 1, "243": 1, "248": 1, "249": 1, "251": 1, "414": 1, "416": 1, "417": 1, "419": 1, "427": 1, "428": 1, "429": 1, "430": 1, "432": 1, "434": 1, "441": 1, "443": 1, "451": 1, "453": 1, "459": 1, "460": 1, "462": 1, "467": 1, "469": 1, "483": 1, "485": 1, "493": 1, "494": 1, "499": 1, "500": 1, "501": 1, "503": 1, "519": 1, "521": 1, "523": 1, "525": 1}, "517": {"88": 1, "89": 1, "90": 1}, "4673": {"68": 1, "71": 1, "122": 1, "137": 1, "145": 1}, "4802": {"103": 1}, "4805": {"224": 1, "225": 1, "226": 1, "227": 1}, "4963": {"109": 1, "110": 1, "111": 1}, "4965": {"79": 1, "80": 1, "81": 1, "82": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "12385": {"67": 1, "68": 1, "73": 1, "75": 1, "100": 1, "101": 1, "121": 1, "122": 1, "123": 1, "138": 1, "139": 1, "140": 1, "148": 1, "149": 1, "150": 1, "153": 1, "154": 1, "155": 1, "157": 1, "158": 1, "159": 1, "229": 1, "232": 1, "233": 1, "234": 1}, "15549": {"61": 1}};
+var relevant_lines = {"1": {"50": 1, "51": 1, "52": 1, "61": 1, "64": 1, "69": 1, "71": 1, "78": 1, "86": 1, "87": 1, "88": 1, "89": 1, "90": 1, "91": 1, "92": 1, "93": 1, "95": 1, "96": 1, "98": 1, "99": 1, "100": 1, "102": 1, "111": 1, "116": 1, "117": 1, "118": 1, "138": 1, "140": 1, "155": 1, "157": 1, "164": 1, "165": 1, "166": 1, "196": 1, "202": 1, "205": 1, "207": 1, "217": 1, "239": 1, "241": 1, "243": 1, "248": 1, "249": 1, "251": 1, "414": 1, "416": 1, "417": 1, "419": 1, "427": 1, "428": 1, "429": 1, "430": 1, "432": 1, "434": 1, "441": 1, "443": 1, "451": 1, "453": 1, "459": 1, "460": 1, "462": 1, "467": 1, "469": 1, "483": 1, "485": 1, "493": 1, "494": 1, "495": 1, "500": 1, "501": 1, "502": 1, "504": 1, "520": 1, "522": 1, "524": 1, "526": 1}, "517": {"88": 1, "89": 1, "90": 1}, "4673": {"68": 1, "71": 1, "122": 1, "137": 1, "145": 1}, "4802": {"103": 1}, "4805": {"224": 1, "225": 1, "226": 1, "227": 1}, "4963": {"109": 1, "110": 1, "111": 1}, "4965": {"79": 1, "80": 1, "81": 1, "82": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "12385": {"67": 1, "68": 1, "73": 1, "75": 1, "100": 1, "101": 1, "121": 1, "122": 1, "123": 1, "138": 1, "139": 1, "140": 1, "148": 1, "149": 1, "150": 1, "153": 1, "154": 1, "155": 1, "157": 1, "158": 1, "159": 1, "229": 1, "232": 1, "233": 1, "234": 1}, "15549": {"61": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-17</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A TIFF IO file for DImg framework - load operations</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"><span class='comment'>// C ANSI includes</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='keyword'>extern</span> <span class='string_literal'>"C"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;tiffvers.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;cstdio&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QFile&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include &lt;QByteArray&gt;</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "digikam_config.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include "dimgloaderobserver.h"</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "dimgtiffloader.h" //krazy:exclude=includes</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='keyword'>namespace</span> DigikamTIFFDImgPlugin</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='keyword'>bool</span> DImgTIFFLoader::load(<span class='keyword'>const</span> QString&amp; filePath, DImgLoaderObserver* <span class='keyword'>const</span> observer)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> readMetadata(filePath);</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='comment'>// TIFF error handling. If an errors/warnings occurs during reading,</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> <span class='comment'>// libtiff will call these methods</span></td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='directive'>#ifdef Q_OS_WIN</span></td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> TIFFSetWarningHandler(<span class='macro'>NULL<span class='expansion'>__null</span></span>);</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> TIFFSetWarningHandler(dimg_tiff_warning);</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> TIFFSetErrorHandler(dimg_tiff_error);</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='comment'>// Open the file</span></td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> TIFF* <span class='keyword'>const</span> tif = TIFFOpen(QFile::encodeName(filePath).constData(), <span class='string_literal'>"r"</span>);</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!tif</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming 'tif' is non-null</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 73, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Cannot open image file."</span>;</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>if</span> (DIGIKAM_DIMG_LOG_TIFF().isDebugEnabled())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> TIFFPrintDirectory(tif, <span class='macro'>stdout<span class='expansion'>stdout</span></span>, 0);</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='comment'>// Get image information.</span></td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> uint32 w, h;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> uint16 bits_per_sample;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> uint16 samples_per_pixel;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> uint16 photometric;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> uint16 planar_config;</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> uint32 rows_per_strip;</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> tsize_t strip_size;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> tstrip_t num_of_strips;</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_IMAGEWIDTH<span class='expansion'>256</span></span>, &amp;w);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_IMAGELENGTH<span class='expansion'>257</span></span>, &amp;h);</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_BITSPERSAMPLE<span class='expansion'>258</span></span>, &amp;bits_per_sample);</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_SAMPLESPERPIXEL<span class='expansion'>277</span></span>, &amp;samples_per_pixel);</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_PLANARCONFIG<span class='expansion'>284</span></span>, &amp;planar_config);</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_ROWSPERSTRIP<span class='expansion'>278</span></span>, &amp;rows_per_strip) == 0</span> || <span class="mrange">rows_per_strip == 0</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:83ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming 'rows_per_strip' is not equal to 0</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 104, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"TIFF loader: Cannot handle non-stripped images. Loading file "</span></td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">rows_per_strip &gt; h</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Assuming 'rows_per_strip' is &lt;= 'h'</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> rows_per_strip = h;</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>if</span> ( <span class="mrange">bits_per_sample == 0</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Assuming 'bits_per_sample' is not equal to 0</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> || <span class="mrange">samples_per_pixel == 0</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Assuming 'samples_per_pixel' is not equal to 0</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> || rows_per_strip == 0</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"><span class='comment'>// || rows_per_strip &gt; h</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> )</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 122, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"TIFF loader: Encountered invalid value in image."</span> &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> &lt;&lt; <span class='string_literal'>" bits_per_sample : "</span> &lt;&lt; bits_per_sample &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> &lt;&lt; <span class='string_literal'>" samples_per_pixel : "</span> &lt;&lt; samples_per_pixel &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> &lt;&lt; <span class='string_literal'>" rows_per_strip : "</span> &lt;&lt; rows_per_strip &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> &lt;&lt; <span class='string_literal'>" h : "</span> &lt;&lt; h &lt;&lt; endl</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> &lt;&lt; <span class='string_literal'>" Loading file : "</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='comment'>// TODO: check others TIFF color-spaces here. Actually, only RGB, PALETTE and MINISBLACK</span></td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> <span class='comment'>// have been tested.</span></td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> <span class='comment'>// Complete description of TIFFTAG_PHOTOMETRIC tag can be found at this url:</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> <span class='comment'>// http://www.awaresystems.be/imaging/tiff/tifftags/photometricinterpretation.html</span></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> TIFFGetFieldDefaulted(tif, <span class='macro'>TIFFTAG_PHOTOMETRIC<span class='expansion'>262</span></span>, &amp;photometric);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">photometric != <span class='macro'>PHOTOMETRIC_RGB<span class='expansion'>2</span></span></span> &amp;&amp;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Assuming 'photometric' is equal to PHOTOMETRIC_RGB</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> photometric != <span class='macro'>PHOTOMETRIC_PALETTE<span class='expansion'>3</span></span> &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> photometric != <span class='macro'>PHOTOMETRIC_MINISWHITE<span class='expansion'>0</span></span> &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> photometric != <span class='macro'>PHOTOMETRIC_MINISBLACK<span class='expansion'>1</span></span> &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> ((photometric != <span class='macro'>PHOTOMETRIC_YCBCR<span class='expansion'>6</span></span>) | (bits_per_sample != 8)) &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> ((photometric != <span class='macro'>PHOTOMETRIC_SEPARATED<span class='expansion'>5</span></span>) | (bits_per_sample != 8)) &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> (m_loadFlags &amp; LoadImageData))</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 148, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Can not handle image without RGB color-space: "</span></td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> &lt;&lt; photometric;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>int</span> colorModel = DImg::COLORMODELUNKNOWN;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='keyword'>switch</span> (photometric)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Control jumps to 'case 2:' at line 164</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_MINISWHITE<span class='expansion'>0</span></span>:</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_MINISBLACK<span class='expansion'>1</span></span>:</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> colorModel = DImg::GRAYSCALE;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_RGB<span class='expansion'>2</span></span>:</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> colorModel = DImg::RGB;</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td> Execution continues on line 196</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_PALETTE<span class='expansion'>3</span></span>:</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> colorModel = DImg::INDEXED;</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_MASK<span class='expansion'>4</span></span>:</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> colorModel = DImg::MONOCHROME;</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_SEPARATED<span class='expansion'>5</span></span>:</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> colorModel = DImg::CMYK;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_YCBCR<span class='expansion'>6</span></span>:</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> colorModel = DImg::YCBCR;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_CIELAB<span class='expansion'>8</span></span>:</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_ICCLAB<span class='expansion'>9</span></span>:</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_ITULAB<span class='expansion'>10</span></span>:</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> colorModel = DImg::CIELAB;</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_LOGL<span class='expansion'>32844</span></span>:</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> <span class='keyword'>case</span> <span class='macro'>PHOTOMETRIC_LOGLUV<span class='expansion'>32845</span></span>:</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> colorModel = DImg::COLORMODELRAW;</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">samples_per_pixel == 4</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Assuming 'samples_per_pixel' is not equal to 4</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> m_hasAlpha = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> m_hasAlpha = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">bits_per_sample == 16</span> || <span class="mrange">bits_per_sample == 32</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Assuming 'bits_per_sample' is not equal to 16</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:34ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Assuming 'bits_per_sample' is equal to 32</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> m_sixteenBit = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> m_sixteenBit = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> <span class='comment'>// Read image ICC profile</span></td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadICCData</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> uchar* profile_data = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> uint32 profile_size;</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>if</span> (TIFFGetField(tif, <span class='macro'>TIFFTAG_ICCPROFILE<span class='expansion'>34675</span></span>, &amp;profile_size, &amp;profile_data))</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> QByteArray profile_rawdata;</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> profile_rawdata.resize(profile_size);</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> memcpy(profile_rawdata.data(), profile_data, profile_size);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> imageSetIccProfile(IccProfile(profile_rawdata));</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='comment'>// If ICC profile is null, check Exif metadata.</span></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> checkExifWorkingColorSpace();</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='comment'>// Get image data.</span></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; data;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadImageData</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">observer</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Assuming 'observer' is null</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1F);</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> strip_size = TIFFStripSize(tif);</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> num_of_strips = TIFFNumberOfStrips(tif);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>if</span> (bits_per_sample == 16) <span class='comment'>// 16 bits image.</span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> data.reset(new_failureTolerant(w, h, 8));</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(strip_size));</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 258, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='keyword'>long</span> bytesRead = 0;</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> uint checkpoint = 0;</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='keyword'>for</span> (tstrip_t st = 0 ; st &lt; num_of_strips ; ++st)</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; st == checkpoint)</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> checkpoint += granularity(observer, num_of_strips, 0.8F);</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)st) / ((<span class='keyword'>float</span>)num_of_strips))));</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> bytesRead = TIFFReadEncodedStrip(tif, st, strip.data(), strip_size);</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> <span class='keyword'>if</span> (bytesRead == -1)</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 288, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read strip"</span>;</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> <span class='keyword'>if</span> ((planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>) &amp;&amp;</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> (st % (num_of_strips / samples_per_pixel)) == 0)</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> offset = 0;</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> ushort* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(strip.data());</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> ushort* dataPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(data.data() + offset);</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> ushort* p;</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> <span class='comment'>// tiff data is read as BGR or ABGR or Greyscale</span></td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (samples_per_pixel == 1) <span class='comment'>// See bug #148400: Greyscale pictures only have _one_ sample per pixel</span></td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 2 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> <span class='comment'>// We have to read two bytes for one pixel</span></td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> p[0] = *stripPtr; <span class='comment'>// RGB have to be set to the _same_ value</span></td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> p[1] = *stripPtr;</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> p[3] = 0xFFFF; <span class='comment'>// set alpha to 100%</span></td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> offset += bytesRead * 4; <span class='comment'>// The _byte_offset in the data array is, of course, four times bytesRead</span></td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 6 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> p[3] = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> offset += bytesRead / 6 * 8;</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 2 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> p[3] = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> offset += bytesRead / 2 * 8;</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 8 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> p[3] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> offset += bytesRead;</td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 2 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> p = dataPtr;</td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> p[2] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> p[1] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> p[0] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> <span class='keyword'>case</span> 3:</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> p[3] = *stripPtr++;</td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> dataPtr += 4;</td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> offset += bytesRead / 2 * 8;</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (bits_per_sample == 32) <span class='comment'>// 32 bits image.</span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:14ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> data.reset(new_failureTolerant(w, h, 8));</td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(strip_size));</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 421, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>long</span> bytesRead = 0;</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> uint checkpoint = 0;</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> <span class='keyword'>float</span> maxValue = 0.0;</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> <span class='keyword'>for</span> (tstrip_t st = 0 ; <span class="mrange"><span class="mrange">st &lt; num_of_strips</span></span> ; ++st)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:36ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming 'st' is &lt; 'num_of_strips'</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgEvent" style="margin-left:36ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Assuming 'st' is &gt;= 'num_of_strips'</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 459</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; !observer-&gt;continueQuery(m_image))</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> bytesRead = TIFFReadEncodedStrip(tif, st, strip.data(), strip_size);</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">bytesRead == -1</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 445, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read strip"</span>;</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> <span class='keyword'>float</span>* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>float</span>*&gt;(strip.data());</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; <span class="mrange">i &lt; bytesRead / 4</span> ; ++i)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:34ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 432</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> maxValue = qMax(maxValue, *stripPtr++);</td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> <span class='keyword'>double</span> factor = (maxValue &gt; 10.0) ? log10(maxValue) * 1.5 : 1.0;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgControl" style="margin-left:29ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>'?' condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> <span class='keyword'>double</span> scale = (factor &gt; 1.0) ? 0.75 : 1.0;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:29ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>'?' condition is false</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> <span class='keyword'>if</span> (factor &gt; 1.0)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 464, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"TIFF image cannot be converted lossless from 32 to 16 bits"</span> &lt;&lt; filePath;</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> <span class='keyword'>for</span> (tstrip_t st = 0 ; st &lt; num_of_strips ; ++st)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; st == checkpoint)</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> checkpoint += granularity(observer, num_of_strips, 0.8F);</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)st) / ((<span class='keyword'>float</span>)num_of_strips))));</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> bytesRead = TIFFReadEncodedStrip(tif, st, strip.data(), strip_size);</td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">bytesRead == -1</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 487, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read strip"</span>;</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> TIFFClose(tif);</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> loadingFailed();</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span></span>) &amp;&amp;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming 'planar_config' is equal to PLANARCONFIG_SEPARATE</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path47" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> <span class="mrange">(st % (num_of_strips / samples_per_pixel)) == 0</span>)</td></tr>
+<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> (samples_per_pixel != 0) &amp;&amp;</td></tr>
+<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> <span class="mrange">(st % (num_of_strips / samples_per_pixel)) == 0</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> offset = 0;</td></tr>
-<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> <span class='keyword'>float</span>* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>float</span>*&gt;(strip.data());</td></tr>
-<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> ushort* dataPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(data.data() + offset);</td></tr>
-<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> ushort* p = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">samples_per_pixel == 3</span>) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> offset = 0;</td></tr>
+<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> <span class='keyword'>float</span>* stripPtr = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>float</span>*&gt;(strip.data());</td></tr>
+<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> ushort* dataPtr = <span class='keyword'>reinterpret_cast</span>&lt;ushort*&gt;(data.data() + offset);</td></tr>
+<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> ushort* p = <span class='keyword'>nullptr</span>;</td></tr>
+<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">samples_per_pixel == 3</span>) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path47" class="msg msgEvent" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Assuming 'samples_per_pixel' is equal to 3</td><td><div class="PathNav"><a href="#Path48" title="Next event (48)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path48" class="msg msgControl" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">48</div></td><td><div class="PathNav"><a href="#Path47" title="Previous event (47)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path49" title="Next event (49)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 12 ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> p[3] = 0xFFFF;</td></tr>
-<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> offset += bytesRead / 12 * 8;</td></tr>
-<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 12 ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> p[3] = 0xFFFF;</td></tr>
+<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> offset += bytesRead / 12 * 8;</td></tr>
+<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 3) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path49" class="msg msgControl" style="margin-left:22ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">49</div></td><td><div class="PathNav"><a href="#Path48" title="Previous event (48)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path50" title="Next event (50)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; <span class="mrange">i &lt; bytesRead / 4</span> ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; <span class="mrange">i &lt; bytesRead / 4</span> ; ++i)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path50" class="msg msgEvent" style="margin-left:38ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">50</div></td><td><div class="PathNav"><a href="#Path49" title="Previous event (49)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path51" title="Next event (51)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path51" class="msg msgControl" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">51</div></td><td><div class="PathNav"><a href="#Path50" title="Previous event (50)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#EndPath" title="Next event (52)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>switch</span> ((<span class="mrange">st / (num_of_strips / samples_per_pixel)</span>))</td></tr>
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:37ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">52</div></td><td><div class="PathNav"><a href="#Path51" title="Previous event (51)">&#x2190;</a></div></td></td><td>Division by zero</td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
-<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> p[3] = 0xFFFF;</td></tr>
-<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
-<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
-<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
-<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
-<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 16 ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> offset += bytesRead / 16 * 8;</td></tr>
-<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
-<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 4 ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
-<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
-<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
-<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
-<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='keyword'>case</span> 3:</td></tr>
-<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
-<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
-<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// Non 16 or 32 bits images ==&gt; get it on BGRA 8 bits.</span></td></tr>
-<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line"> data.reset(new_failureTolerant(w, h, 4));</td></tr>
-<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(w, rows_per_strip, 4));</td></tr>
-<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
-<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 601, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
-<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
-<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> <span class='keyword'>long</span> pixelsRead = 0;</td></tr>
-<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='comment'>// this is inspired by TIFFReadRGBAStrip, tif_getimage.c</span></td></tr>
-<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> <span class='keyword'>char</span> emsg[1024] = <span class='string_literal'>""</span>;</td></tr>
-<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> uint32 rows_to_read = 0;</td></tr>
-<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> uint checkpoint = 0;</td></tr>
-<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> TIFFRGBAImage img;</td></tr>
-<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> <span class='comment'>// test whether libtiff can read format and initiate reading</span></td></tr>
-<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='keyword'>if</span> (!TIFFRGBAImageOK(tif, emsg) || !TIFFRGBAImageBegin(&amp;img, tif, 0, emsg))</td></tr>
-<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 620, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to set up RGBA reading of image, filename "</span></td></tr>
-<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> &lt;&lt; TIFFFileName(tif) &lt;&lt; <span class='string_literal'>" error message from Libtiff: "</span> &lt;&lt; emsg;</td></tr>
-<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> <span class='comment'>// libtiff cannot handle all possible orientations, it give weird results.</span></td></tr>
-<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> <span class='comment'>// We rotate ourselves. (Bug 274865)</span></td></tr>
-<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> img.req_orientation = img.orientation;</td></tr>
-<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> <span class='comment'>// read strips from image: read rows_per_strip, so always start at beginning of a strip</span></td></tr>
-<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> <span class='keyword'>for</span> (uint row = 0 ; row &lt; h ; row += rows_per_strip)</td></tr>
-<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; row &gt;= checkpoint)</td></tr>
-<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line"> checkpoint += granularity(observer, h, 0.8F);</td></tr>
-<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
-<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)row) / ((<span class='keyword'>float</span>)h))));</td></tr>
-<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> img.row_offset = row;</td></tr>
-<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> img.col_offset = 0;</td></tr>
-<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> <span class='keyword'>if</span> (row + rows_per_strip &gt; img.height)</td></tr>
-<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> rows_to_read = img.height - row;</td></tr>
-<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> rows_to_read = rows_per_strip;</td></tr>
-<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> <span class='comment'>// Read data</span></td></tr>
-<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='keyword'>if</span> (TIFFRGBAImageGet(&amp;img, <span class='keyword'>reinterpret_cast</span>&lt;uint32*&gt;(strip.data()), img.width, rows_to_read) == -1)</td></tr>
-<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 664, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read image data"</span>;</td></tr>
-<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> pixelsRead = rows_to_read * img.width;</td></tr>
-<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> uchar* stripPtr = (uchar*)(strip.data());</td></tr>
-<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uchar* dataPtr = (uchar*)(data.data() + offset);</td></tr>
-<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> uchar* p = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> <span class='comment'>// Reverse red and blue</span></td></tr>
-<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; pixelsRead ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> p = dataPtr;</td></tr>
-<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> p[2] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> p[1] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> p[0] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> p[3] = *stripPtr++;</td></tr>
-<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> dataPtr += 4;</td></tr>
-<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> offset += pixelsRead * 4;</td></tr>
-<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> TIFFRGBAImageEnd(&amp;img);</td></tr>
-<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
-<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> TIFFClose(tif);</td></tr>
-<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> <span class='keyword'>if</span> (observer)</td></tr>
-<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> observer-&gt;progressInfo(m_image, 1.0);</td></tr>
-<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> imageWidth() = w;</td></tr>
-<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> imageHeight() = h;</td></tr>
-<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> imageData() = data.take();</td></tr>
-<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"format"</span>), QLatin1String(<span class='string_literal'>"TIFF"</span>));</td></tr>
-<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalColorModel"</span>), colorModel);</td></tr>
-<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalBitDepth"</span>), bits_per_sample);</td></tr>
-<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalSize"</span>), QSize(w, h));</td></tr>
-<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line">} <span class='comment'>// namespace DigikamTIFFDImgPlugin</span></td></tr>
+<tr><td class="num"></td><td class="line"><div id="Path51" class="msg msgControl" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">51</div></td><td><div class="PathNav"><a href="#Path50" title="Previous event (50)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path52" title="Next event (52)">&#x2192;</a></div></td></tr></table></div></td></tr>
+<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> <span class='keyword'>switch</span> (<span class="mrange">st / (num_of_strips / ((samples_per_pixel != 0) ? samples_per_pixel : 1))</span>)</td></tr>
+<tr><td class="num"></td><td class="line"><div id="Path52" class="msg msgControl" style="margin-left:56ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">52</div></td><td><div class="PathNav"><a href="#Path51" title="Previous event (51)">&#x2190;</a></div></td></td><td>'?' condition is true</td><td><div class="PathNav"><a href="#EndPath" title="Next event (53)">&#x2192;</a></div></td></tr></table></div></td></tr>
+<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:36ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">53</div></td><td><div class="PathNav"><a href="#Path52" title="Previous event (52)">&#x2190;</a></div></td></td><td>Division by zero</td></tr></table></div></td></tr>
+<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
+<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> p[3] = 0xFFFF;</td></tr>
+<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
+<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
+<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
+<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_CONTIG<span class='expansion'>1</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 16 ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> offset += bytesRead / 16 * 8;</td></tr>
+<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> ((samples_per_pixel == 4) &amp;&amp; (planar_config == <span class='macro'>PLANARCONFIG_SEPARATE<span class='expansion'>2</span></span>))</td></tr>
+<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; bytesRead / 4 ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='keyword'>switch</span> ((st / (num_of_strips / samples_per_pixel)))</td></tr>
+<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> <span class='keyword'>case</span> 0:</td></tr>
+<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> p[2] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>case</span> 1:</td></tr>
+<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> p[1] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>case</span> 2:</td></tr>
+<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> p[0] = (ushort)qBound(0.0, pow((<span class='keyword'>double</span>)*stripPtr++ / factor, scale) * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>case</span> 3:</td></tr>
+<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> p[3] = (ushort)qBound(0.0, (<span class='keyword'>double</span>)*stripPtr++ * 65535.0, 65535.0);</td></tr>
+<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
+<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> offset += bytesRead / 4 * 8;</td></tr>
+<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// Non 16 or 32 bits images ==&gt; get it on BGRA 8 bits.</span></td></tr>
+<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> data.reset(new_failureTolerant(w, h, 4));</td></tr>
+<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> QScopedArrayPointer&lt;uchar&gt; strip(new_failureTolerant(w, rows_per_strip, 4));</td></tr>
+<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> <span class='keyword'>if</span> (!data || strip.isNull())</td></tr>
+<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 602, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to allocate memory for TIFF image"</span> &lt;&lt; filePath;</td></tr>
+<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> <span class='keyword'>long</span> offset = 0;</td></tr>
+<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='keyword'>long</span> pixelsRead = 0;</td></tr>
+<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> <span class='comment'>// this is inspired by TIFFReadRGBAStrip, tif_getimage.c</span></td></tr>
+<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> <span class='keyword'>char</span> emsg[1024] = <span class='string_literal'>""</span>;</td></tr>
+<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> uint32 rows_to_read = 0;</td></tr>
+<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> uint checkpoint = 0;</td></tr>
+<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> TIFFRGBAImage img;</td></tr>
+<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='comment'>// test whether libtiff can read format and initiate reading</span></td></tr>
+<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='keyword'>if</span> (!TIFFRGBAImageOK(tif, emsg) || !TIFFRGBAImageBegin(&amp;img, tif, 0, emsg))</td></tr>
+<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 621, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to set up RGBA reading of image, filename "</span></td></tr>
+<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> &lt;&lt; TIFFFileName(tif) &lt;&lt; <span class='string_literal'>" error message from Libtiff: "</span> &lt;&lt; emsg;</td></tr>
+<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> <span class='comment'>// libtiff cannot handle all possible orientations, it give weird results.</span></td></tr>
+<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> <span class='comment'>// We rotate ourselves. (Bug 274865)</span></td></tr>
+<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> img.req_orientation = img.orientation;</td></tr>
+<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> <span class='comment'>// read strips from image: read rows_per_strip, so always start at beginning of a strip</span></td></tr>
+<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> <span class='keyword'>for</span> (uint row = 0 ; row &lt; h ; row += rows_per_strip)</td></tr>
+<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> <span class='keyword'>if</span> (observer &amp;&amp; row &gt;= checkpoint)</td></tr>
+<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> checkpoint += granularity(observer, h, 0.8F);</td></tr>
+<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> <span class='keyword'>if</span> (!observer-&gt;continueQuery(m_image))</td></tr>
+<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1 + (0.8 * (((<span class='keyword'>float</span>)row) / ((<span class='keyword'>float</span>)h))));</td></tr>
+<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> img.row_offset = row;</td></tr>
+<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"> img.col_offset = 0;</td></tr>
+<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"> <span class='keyword'>if</span> (row + rows_per_strip &gt; img.height)</td></tr>
+<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> rows_to_read = img.height - row;</td></tr>
+<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line"> <span class='keyword'>else</span></td></tr>
+<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> rows_to_read = rows_per_strip;</td></tr>
+<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"> <span class='comment'>// Read data</span></td></tr>
+<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>if</span> (TIFFRGBAImageGet(&amp;img, <span class='keyword'>reinterpret_cast</span>&lt;uint32*&gt;(strip.data()), img.width, rows_to_read) == -1)</td></tr>
+<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='macro'>qCWarning(DIGIKAM_DIMG_LOG_TIFF)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DIMG_LOG_TIFF().isWarningEnabled<br>(); qt_category_enabled; qt_category_enabled = false) QMessageLogger<br>("/mnt/devel/GIT/6.x/core/dplugins/dimg/tiff/dimgtiffloader_load.cpp"<br>, 665, __PRETTY_FUNCTION__, DIGIKAM_DIMG_LOG_TIFF().categoryName<br>()).warning()</span></span> &lt;&lt; <span class='string_literal'>"Failed to read image data"</span>;</td></tr>
+<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line"> loadingFailed();</td></tr>
+<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
+<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> pixelsRead = rows_to_read * img.width;</td></tr>
+<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> uchar* stripPtr = (uchar*)(strip.data());</td></tr>
+<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> uchar* dataPtr = (uchar*)(data.data() + offset);</td></tr>
+<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> uchar* p = <span class='keyword'>nullptr</span>;</td></tr>
+<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> <span class='comment'>// Reverse red and blue</span></td></tr>
+<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; pixelsRead ; ++i)</td></tr>
+<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> p = dataPtr;</td></tr>
+<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> p[2] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> p[1] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> p[0] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> p[3] = *stripPtr++;</td></tr>
+<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> dataPtr += 4;</td></tr>
+<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> offset += pixelsRead * 4;</td></tr>
+<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> TIFFRGBAImageEnd(&amp;img);</td></tr>
+<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
+<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> TIFFClose(tif);</td></tr>
+<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> <span class='keyword'>if</span> (observer)</td></tr>
+<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> {</td></tr>
+<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> observer-&gt;progressInfo(m_image, 1.0);</td></tr>
+<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> }</td></tr>
+<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> imageWidth() = w;</td></tr>
+<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> imageHeight() = h;</td></tr>
+<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> imageData() = data.take();</td></tr>
+<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"format"</span>), QLatin1String(<span class='string_literal'>"TIFF"</span>));</td></tr>
+<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalColorModel"</span>), colorModel);</td></tr>
+<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalBitDepth"</span>), bits_per_sample);</td></tr>
+<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalSize"</span>), QSize(w, h));</td></tr>
+<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
+<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line">}</td></tr>
+<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> </td></tr>
+<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line">} <span class='comment'>// namespace DigikamTIFFDImgPlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-7b30fb.html b/static/reports/clang/master/report-d956d7.html
similarity index 99%
rename from static/reports/clang/master/report-7b30fb.html
rename to static/reports/clang/master/report-d956d7.html
index a802a6525..19cc6b2e4 100644
--- a/static/reports/clang/master/report-7b30fb.html
+++ b/static/reports/clang/master/report-d956d7.html
@@ -1,659 +1,659 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'indirectChild3.wp.value' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -->
<!-- FILENAME statesavingobjecttest.cpp -->
<!-- FUNCTIONNAME testRecursiveChildrenSaving -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 634bde751797fbd17ce8e02e8c829c22 -->
<!-- BUGLINE 284 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 47 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 284, column 1</a><br />Potential leak of memory pointed to by 'indirectChild3.wp.value'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name statesavingobjecttest.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/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/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -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/6.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/build.scan/core/tests/fileio/statesavingobjecttest_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/tests/fileio -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"48": 1, "49": 1, "50": 1, "51": 1, "58": 1, "59": 1, "60": 1, "61": 1, "62": 1, "65": 1, "66": 1, "67": 1, "95": 1, "96": 1, "97": 1, "105": 1, "106": 1, "107": 1, "248": 1, "249": 1, "250": 1, "251": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1, "259": 1, "260": 1, "262": 1, "264": 1, "265": 1, "266": 1, "267": 1, "268": 1, "269": 1, "270": 1, "272": 1, "273": 1, "274": 1, "275": 1, "276": 1, "277": 1, "278": 1, "279": 1, "281": 1, "283": 1, "284": 1}, "4650": {"103": 1, "115": 1}, "4653": {"224": 1, "225": 1, "226": 1, "227": 1, "269": 1, "270": 1, "271": 1}, "4813": {"79": 1, "80": 1, "81": 1, "82": 1, "302": 1, "303": 1, "304": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "19269": {"569": 1, "572": 1, "688": 1, "689": 1}, "53248": {"53": 1, "71": 1, "85": 1, "86": 1, "87": 1, "88": 1, "91": 1, "92": 1}, "60665": {"251": 1, "252": 1, "253": 1, "275": 1, "276": 1, "277": 1, "356": 1, "357": 1, "358": 1, "359": 1, "360": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-12-23</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a test for the StateSavingObject class</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009 by Johannes Wienke &lt;languitar at semipol dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "statesavingobjecttest.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QBuffer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QPointer&gt;</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;kconfiggroup.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "statesavingobject.h"</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> Digikam;</td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='macro'>QTEST_GUILESS_MAIN(StateSavingObjectTest)<span class='expansion'>int main(int argc, char *argv[]) { QCoreApplication app(argc,<br> argv); app.setAttribute(Qt::AA_Use96Dpi, true); StateSavingObjectTest<br> tc; QTest::setMainSourcePath("/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, "/mnt/devel/GIT/6.x/build.scan"); return QTest::qExec(&amp;<br>tc, argc, argv); }</span></span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> StubStateSaver::Private</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> Private()</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> : loadCalls(0),</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> saveCalls(0)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> loadCalls;</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> saveCalls;</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">StubStateSaver::StubStateSaver(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> : QObject(parent),</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> StateSavingObject(<span class='keyword'>this</span>),</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">StubStateSaver::~StubStateSaver()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line">KConfigGroup StubStateSaver::getGroup()</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>return</span> getConfigGroup();</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">QString StubStateSaver::getEntryKey(<span class='keyword'>const</span> QString&amp; base)</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>return</span> entryName(base);</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doLoadState()</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> d-&gt;loadCalls++;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"><span class='keyword'>void</span> StubStateSaver::doSaveState()</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> d-&gt;saveCalls++;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::loadCalled()</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>bool</span> StubStateSaver::saveCalled()</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls &gt; 0;</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numLoadCalls()</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='keyword'>return</span> d-&gt;loadCalls;</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"><span class='keyword'>unsigned</span> <span class='keyword'>int</span> StubStateSaver::numSaveCalls()</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='keyword'>return</span> d-&gt;saveCalls;</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"><span class='comment'>// -----------------------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testGroupName()</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), QLatin1String(<span class='string_literal'>"&lt;default&gt;"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), QLatin1String<br>("&lt;default&gt;"), "saver.getGroup().name()", "QLatin1String(\"&lt;default&gt;\")"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 115)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>const</span> QString name = QLatin1String(<span class='string_literal'>"testName 2"</span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> saver.setObjectName(name);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), name)<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), name, "saver.getGroup().name()"<br>, "name", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 119)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> KConfigGroup group = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> saver.setConfigGroup(group);</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 123)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// setting object name must not change returned group</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> saver.setObjectName(QLatin1String(<span class='string_literal'>"new Name"</span>));</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group.name<br>(), "saver.getGroup().name()", "group.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 127)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='comment'>// resetting group must work</span></td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> KConfigGroup group2 = KSharedConfig::openConfig()-&gt;group(QLatin1String(<span class='string_literal'>"Another SimpleTest Group"</span>));</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> saver.setConfigGroup(group2);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>QCOMPARE(saver.getGroup().name(), group2.name())<span class='expansion'>do { if (!QTest::qCompare(saver.getGroup().name(), group2.name<br>(), "saver.getGroup().name()", "group2.name()", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 132)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testPrefixUsage()</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// default, empty prefix</span></td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), QLatin1String(<span class='string_literal'>""</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), QLatin1String(""), "saver.getEntryKey(QLatin1String(\"\"))"<br>, "QLatin1String(\"\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 139)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), QLatin1String(<span class='string_literal'>"test"</span>))<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), QLatin1String("test"), "saver.getEntryKey(QLatin1String(\"test\"))"<br>, "QLatin1String(\"test\")", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 140)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>const</span> QString prefix = QLatin1String(<span class='string_literal'>" _Pr efix_ "</span>);</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> saver.setEntryPrefix(prefix);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>""</span>)), prefix)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("")<br>), prefix, "saver.getEntryKey(QLatin1String(\"\"))", "prefix"<br>, "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 144)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> QString tmp = prefix + QLatin1String(<span class='string_literal'>"test"</span>);</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='macro'>QCOMPARE(saver.getEntryKey(QLatin1String(<span class='string_literal'>"test"</span>)), tmp)<span class='expansion'>do { if (!QTest::qCompare(saver.getEntryKey(QLatin1String("test"<br>)), tmp, "saver.getEntryKey(QLatin1String(\"test\"))", "tmp",<br> "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 146)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectCalling()</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> StubStateSaver loader;</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='macro'>QVERIFY(!loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.loadCalled<br>()), "!loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 152)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> loader.loadState();</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='macro'>QVERIFY(loader.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(loader.loadCalled<br>()), "loader.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 154)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='macro'>QVERIFY(!loader.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!loader.saveCalled<br>()), "!loader.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 155)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> StubStateSaver saver;</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='macro'>QVERIFY(!saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.saveCalled<br>()), "!saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 158)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> saver.saveState();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='macro'>QVERIFY(saver.saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(saver.saveCalled<br>()), "saver.saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 160)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>QVERIFY(!saver.loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!saver.loadCalled<br>()), "!saver.loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 161)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 174)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 175)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 176)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 177)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;saveCalled()), "!parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 179)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;saveCalled()), "!directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 180)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;saveCalled()), "!directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 181)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 182)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testDirectChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::DIRECT_CHILDREN);</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 197)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 198)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 199)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;saveCalled()), "!indirectChild-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 200)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='macro'>QVERIFY(!parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!parentSaver<br>-&gt;loadCalled()), "!parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 202)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> <span class='macro'>QVERIFY(!directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild1<br>-&gt;loadCalled()), "!directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 203)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='macro'>QVERIFY(!directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!directChild2<br>-&gt;loadCalled()), "!directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 204)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='macro'>QVERIFY(!indirectChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(!indirectChild<br>-&gt;loadCalled()), "!indirectChild-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 205)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenLoading()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> parentSaver-&gt;loadState();</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='macro'>QVERIFY(parentSaver-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>loadCalled()), "parentSaver-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 226)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='macro'>QVERIFY(directChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;loadCalled()), "directChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 227)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='macro'>QVERIFY(directChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;loadCalled()), "directChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 228)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> <span class='macro'>QVERIFY(indirectChild1-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;loadCalled()), "indirectChild1-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 229)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='macro'>QVERIFY(indirectChild2-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;loadCalled()), "indirectChild2-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 230)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='macro'>QVERIFY(indirectChild3-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;loadCalled()), "indirectChild3-&gt;loadCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 231)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='macro'>QVERIFY(indirectStatelessChild-&gt;loadCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;loadCalled()), "indirectStatelessChild-&gt;loadCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 232)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> <span class='macro'>QCOMPARE(parentSaver-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numLoadCalls(), desiredCalls<br>, "parentSaver-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 235)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numLoadCalls(), desiredCalls<br>, "directChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 236)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='macro'>QCOMPARE(directChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numLoadCalls(), desiredCalls<br>, "directChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 237)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild1-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild1-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 238)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild2-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild2-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 239)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='macro'>QCOMPARE(indirectChild3-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numLoadCalls(), desiredCalls<br>, "indirectChild3-&gt;numLoadCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 240)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='macro'>QCOMPARE(indirectStatelessChild-&gt;numLoadCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numLoadCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numLoadCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 241)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='macro'>QCOMPARE(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 243)) return;} while (false)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"><span class='keyword'>void</span> StateSavingObjectTest::testRecursiveChildrenSaving()</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> StubStateSaver* <span class='keyword'>const</span> parentSaver = <span class='keyword'>new</span> StubStateSaver(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild1 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> QPointer&lt;StubStateSaver&gt; directChild2 = <span class='keyword'>new</span> StubStateSaver(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild1 = <span class='keyword'>new</span> StubStateSaver(directChild1);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild2 = <span class='keyword'>new</span> StubStateSaver(directChild2);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectChild3 = <span class="mrange"><span class='keyword'>new</span> StubStateSaver(directChild2)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:55ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> QBuffer* <span class='keyword'>const</span> directChildStateless = <span class='keyword'>new</span> QBuffer(parentSaver);</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> QPointer&lt;StubStateSaver&gt; indirectStatelessChild = <span class='keyword'>new</span> StubStateSaver(directChildStateless);</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> parentSaver-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> directChild1-&gt;setStateSavingDepth(StateSavingObject::RECURSIVE);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> parentSaver-&gt;saveState();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(parentSaver-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(parentSaver-&gt;<br>saveCalled()), "parentSaver-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 264)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild1<br>-&gt;saveCalled()), "directChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 265)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(directChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(directChild2<br>-&gt;saveCalled()), "directChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 266)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild1-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild1<br>-&gt;saveCalled()), "indirectChild1-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 267)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild2-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild2<br>-&gt;saveCalled()), "indirectChild2-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 268)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectChild3-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectChild3<br>-&gt;saveCalled()), "indirectChild3-&gt;saveCalled()", "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 269)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class="mrange"><span class='macro'>QVERIFY</span>(indirectStatelessChild-&gt;saveCalled())<span class='expansion'>do { if (!QTest::qVerify(static_cast&lt;bool&gt;(indirectStatelessChild<br>-&gt;saveCalled()), "indirectStatelessChild-&gt;saveCalled()"<br>, "", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 270)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> desiredCalls = 1;</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(parentSaver-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(parentSaver-&gt;numSaveCalls(), desiredCalls<br>, "parentSaver-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 273)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;numSaveCalls(), desiredCalls<br>, "directChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 274)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(directChild2-&gt;numSaveCalls(), desiredCalls<br>, "directChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 275)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild1-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild1-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild1-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 276)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild2-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild2-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild2-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 277)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectChild3-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectChild3-&gt;numSaveCalls(), desiredCalls<br>, "indirectChild3-&gt;numSaveCalls()", "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 278)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(indirectStatelessChild-&gt;numSaveCalls(), desiredCalls)<span class='expansion'>do { if (!QTest::qCompare(indirectStatelessChild-&gt;numSaveCalls<br>(), desiredCalls, "indirectStatelessChild-&gt;numSaveCalls()"<br>, "desiredCalls", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 279)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> <span class="mrange"><span class='macro'>QCOMPARE</span>(directChild1-&gt;getStateSavingDepth(), StateSavingObject::RECURSIVE)<span class='expansion'>do { if (!QTest::qCompare(directChild1-&gt;getStateSavingDepth<br>(), StateSavingObject::RECURSIVE, "directChild1-&gt;getStateSavingDepth()"<br>, "StateSavingObject::RECURSIVE", "/mnt/devel/GIT/6.x/core/tests/fileio/statesavingobjecttest.cpp"<br>, 281)) return;} while (false)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Loop condition is false. Exiting loop</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>delete</span> parentSaver;</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'indirectChild3.wp.value'</td></tr></table></div></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-de112b.html b/static/reports/clang/master/report-e78b62.html
similarity index 99%
rename from static/reports/clang/master/report-de112b.html
rename to static/reports/clang/master/report-e78b62.html
index 47bb1872f..c304126ea 100644
--- a/static/reports/clang/master/report-de112b.html
+++ b/static/reports/clang/master/report-e78b62.html
@@ -1,630 +1,630 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Potential leak of memory pointed to by 'item' -->
<!-- BUGTYPE Memory leak -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp -->
<!-- FILENAME hotpixelstool.cpp -->
<!-- FUNCTIONNAME slotAddBlackFrame -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 793eb73311ade8824f7c89caf3668cf2 -->
<!-- BUGLINE 236 -->
<!-- BUGCOLUMN 1 -->
<!-- BUGPATHLENGTH 4 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 236, column 1</a><br />Potential leak of memory pointed to by 'item'</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name hotpixelstool.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -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/KService -D Editor_HotpixelsTool_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels/Editor_HotpixelsTool_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name hotpixelstool.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -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/KService -D Editor_HotpixelsTool_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels/Editor_HotpixelsTool_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/editor/enhance/hotpixels -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"218": 1, "219": 1, "220": 1, "222": 1, "226": 1, "227": 1, "228": 1, "230": 1, "231": 1, "233": 1, "234": 1, "236": 1}, "50919": {"116": 1}, "53575": {"1338": 1, "1339": 1, "1340": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-03-27</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : a digiKam image tool for fixing dots produced by</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* hot/stuck/dead pixels from a CCD.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2006 by Unai Garro &lt;ugarro at users dot sourceforge dot net&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='directive'>#include "hotpixelstool.h"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QGridLayout&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QLabel&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QPolygon&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QProgressBar&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QPushButton&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QIcon&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QApplication&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include &lt;klocalizedstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include &lt;ksharedconfig.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='directive'>#include "blackframelistview.h"</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='directive'>#include "dcombobox.h"</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "daboutdata.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dimgfiltermanager.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "editortooliface.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"><span class='directive'>#include "editortoolsettings.h"</span></td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='directive'>#include "hotpixelfixer.h"</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='directive'>#include "imagedialog.h"</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"><span class='directive'>#include "imageiface.h"</span></td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='directive'>#include "imageregionwidget.h"</span></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='keyword'>namespace</span> DigikamEditorHotPixelsToolPlugin</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> HotPixelsTool::Private</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> : blackFrameButton(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> progressBar(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> filterMethodCombo(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> blackFrameListView(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> previewWidget(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> gboxSettings(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> QString configGroupName;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> QString configLastBlackFrameFileEntry;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> <span class='keyword'>static</span> <span class='keyword'>const</span> QString configFilterMethodEntry;</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> QPushButton* blackFrameButton;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> QProgressBar* progressBar;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> QList&lt;HotPixel&gt; hotPixelsList;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> QUrl blackFrameURL;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> DComboBox* filterMethodCombo;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> BlackFrameListView* blackFrameListView;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> ImageRegionWidget* previewWidget;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> EditorToolSettings* gboxSettings;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"><span class='keyword'>const</span> QString HotPixelsTool::Private::configGroupName(QLatin1String(<span class='string_literal'>"hotpixels Tool"</span>));</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"><span class='keyword'>const</span> QString HotPixelsTool::Private::configLastBlackFrameFileEntry(QLatin1String(<span class='string_literal'>"Last Black Frame File"</span>));</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"><span class='keyword'>const</span> QString HotPixelsTool::Private::configFilterMethodEntry(QLatin1String(<span class='string_literal'>"Filter Method"</span>));</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='comment'>// --------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">HotPixelsTool::HotPixelsTool(QObject* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> : EditorToolThreaded(parent),</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> setObjectName(QLatin1String(<span class='string_literal'>"hotpixels"</span>));</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> setToolName(<span class='macro'>i18n(<span class='string_literal'>"Hot Pixels"</span>)<span class='expansion'>i18nd("digikam", "Hot Pixels")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> setToolIcon(QIcon::fromTheme(QLatin1String(<span class='string_literal'>"hotpixels"</span>)));</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> d-&gt;gboxSettings = <span class='keyword'>new</span> EditorToolSettings(<span class='keyword'>nullptr</span>);</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> d-&gt;gboxSettings-&gt;setButtons(EditorToolSettings::Default|</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> EditorToolSettings::Ok|</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> EditorToolSettings::Cancel|</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> EditorToolSettings::Try);</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> QGridLayout* <span class='keyword'>const</span> grid = <span class='keyword'>new</span> QGridLayout(d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> QLabel* <span class='keyword'>const</span> filterMethodLabel = <span class='keyword'>new</span> QLabel(<span class='macro'>i18n(<span class='string_literal'>"Filter:"</span>)<span class='expansion'>i18nd("digikam", "Filter:")</span></span>, d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> d-&gt;filterMethodCombo = <span class='keyword'>new</span> DComboBox(d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"average filter mode"</span>, <span class='string_literal'>"Average"</span>)<span class='expansion'>i18ndc("digikam", "average filter mode", "Average")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"linear filter mode"</span>, <span class='string_literal'>"Linear"</span>)<span class='expansion'>i18ndc("digikam", "linear filter mode", "Linear")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"quadratic filter mode"</span>, <span class='string_literal'>"Quadratic"</span>)<span class='expansion'>i18ndc("digikam", "quadratic filter mode", "Quadratic")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> d-&gt;filterMethodCombo-&gt;addItem(<span class='macro'>i18nc(<span class='string_literal'>"cubic filter mode"</span>, <span class='string_literal'>"Cubic"</span>)<span class='expansion'>i18ndc("digikam", "cubic filter mode", "Cubic")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> d-&gt;filterMethodCombo-&gt;setDefaultIndex(HotPixelFixer::QUADRATIC_INTERPOLATION);</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> d-&gt;blackFrameButton = <span class='keyword'>new</span> QPushButton(<span class='macro'>i18n(<span class='string_literal'>"Black Frame..."</span>)<span class='expansion'>i18nd("digikam", "Black Frame...")</span></span>, d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> d-&gt;blackFrameButton-&gt;setIcon(QIcon::fromTheme(QLatin1String(<span class='string_literal'>"document-open"</span>)));</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> d-&gt;blackFrameButton-&gt;setWhatsThis(<span class='macro'>i18n(<span class='string_literal'>"Use this button to add a new black frame file which will "<span class='expansion'>i18nd("digikam", "Use this button to add a new black frame file which will "<br> "be used by the hot pixels removal filter.")</span></span></span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='string_literal'><span class='macro'>"be used by the hot pixels removal filter."</span>)<span class='expansion'>i18nd("digikam", "Use this button to add a new black frame file which will "<br> "be used by the hot pixels removal filter.")</span></span> );</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> d-&gt;blackFrameListView = <span class='keyword'>new</span> BlackFrameListView(d-&gt;gboxSettings-&gt;plainPage());</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> spacing = d-&gt;gboxSettings-&gt;spacingHint();</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> grid-&gt;addWidget(filterMethodLabel, 0, 0, 1, 1);</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> grid-&gt;addWidget(d-&gt;filterMethodCombo, 0, 1, 1, 1);</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> grid-&gt;addWidget(d-&gt;blackFrameButton, 0, 2, 1, 1);</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> grid-&gt;addWidget(d-&gt;blackFrameListView, 1, 0, 2, 3);</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> grid-&gt;setRowStretch(3, 10);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> grid-&gt;setContentsMargins(spacing, spacing, spacing, spacing);</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> grid-&gt;setSpacing(spacing);</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> d-&gt;previewWidget = <span class='keyword'>new</span> ImageRegionWidget;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> setToolSettings(d-&gt;gboxSettings);</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> setToolView(d-&gt;previewWidget);</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> setPreviewModeMask(PreviewToolBar::AllPreviewModes);</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='comment'>// -------------------------------------------------------------</span></td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> connect(d-&gt;filterMethodCombo, <span class='macro'>SIGNAL(activated(<span class='keyword'>int</span>))<span class='expansion'>qFlagLocation("2""activated(int)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "152")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotPreview())<span class='expansion'>qFlagLocation("1""slotPreview()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "153")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> connect(d-&gt;blackFrameButton, <span class='macro'>SIGNAL(clicked())<span class='expansion'>qFlagLocation("2""clicked()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "155")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotAddBlackFrame())<span class='expansion'>qFlagLocation("1""slotAddBlackFrame()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "156")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> connect(d-&gt;blackFrameListView, <span class='macro'>SIGNAL(signalBlackFrameSelected(QList&lt;HotPixel&gt;,QUrl))<span class='expansion'>qFlagLocation("2""signalBlackFrameSelected(QList&lt;HotPixel&gt;,QUrl)"<br> "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "158")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotBlackFrame(QList&lt;HotPixel&gt;,QUrl))<span class='expansion'>qFlagLocation("1""slotBlackFrame(QList&lt;HotPixel&gt;,QUrl)"<br> "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "159")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line">HotPixelsTool::~HotPixelsTool()</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::registerFilter()</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> DImgFilterManager::instance()-&gt;addGenerator(<span class='keyword'>new</span> BasicDImgFilterGenerator&lt;HotPixelFixer&gt;());</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::readSettings()</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> KSharedConfig::Ptr config = KSharedConfig::openConfig();</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> KConfigGroup group = config-&gt;group(d-&gt;configGroupName);</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> d-&gt;blackFrameURL = QUrl::fromLocalFile(group.readEntry(d-&gt;configLastBlackFrameFileEntry, QString()));</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> d-&gt;filterMethodCombo-&gt;setCurrentIndex(group.readEntry(d-&gt;configFilterMethodEntry, d-&gt;filterMethodCombo-&gt;defaultIndex()));</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='keyword'>if</span> (d-&gt;blackFrameURL.isValid())</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> EditorToolIface::editorToolIface()-&gt;setToolStartProgress(<span class='macro'>i18n(<span class='string_literal'>"Loading: "</span>)<span class='expansion'>i18nd("digikam", "Loading: ")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> BlackFrameListViewItem* item = <span class='keyword'>new</span> BlackFrameListViewItem(d-&gt;blackFrameListView, d-&gt;blackFrameURL);</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("2""signalLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "184")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("1""slotLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "185")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingComplete())<span class='expansion'>qFlagLocation("2""signalLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "187")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingComplete())<span class='expansion'>qFlagLocation("1""slotLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "188")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::writeSettings()</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> KSharedConfig::Ptr config = KSharedConfig::openConfig();</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> KConfigGroup group = config-&gt;group(d-&gt;configGroupName);</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> group.writeEntry(d-&gt;configLastBlackFrameFileEntry, d-&gt;blackFrameURL.url());</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> group.writeEntry(d-&gt;configFilterMethodEntry, d-&gt;filterMethodCombo-&gt;currentIndex());</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> group.sync();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotLoadingProgress(<span class='keyword'>float</span> v)</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> EditorToolIface::editorToolIface()-&gt;setToolProgress((<span class='keyword'>int</span>)(v*100));</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotLoadingComplete()</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> EditorToolIface::editorToolIface()-&gt;setToolStopProgress();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotResetSettings()</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> d-&gt;filterMethodCombo-&gt;blockSignals(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> d-&gt;filterMethodCombo-&gt;slotReset();</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> d-&gt;filterMethodCombo-&gt;blockSignals(<span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotAddBlackFrame()</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> QUrl url = ImageDialog::getImageURL(<span class='macro'>qApp<span class='expansion'>(static_cast&lt;QApplication *&gt;(QCoreApplication::instance<br>()))</span></span>-&gt;activeWindow(), d-&gt;blackFrameURL, <span class='macro'>i18n(<span class='string_literal'>"Select Black Frame Image"</span>)<span class='expansion'>i18nd("digikam", "Select Black Frame Image")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!url.isEmpty()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> <span class='comment'>// Load the selected file and insert into the list.</span></td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> d-&gt;blackFrameURL = url;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> d-&gt;blackFrameListView-&gt;clear();</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> BlackFrameListViewItem* item = <span class="mrange"><span class='keyword'>new</span> BlackFrameListViewItem(d-&gt;blackFrameListView, d-&gt;blackFrameURL)</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:40ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Memory is allocated</td><td><div class="PathNav"><a href="#EndPath" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("2""signalLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "230")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingProgress(<span class='keyword'>float</span>))<span class='expansion'>qFlagLocation("1""slotLoadingProgress(float)" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "231")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> connect(item, <span class='macro'>SIGNAL(signalLoadingComplete())<span class='expansion'>qFlagLocation("2""signalLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "233")</span></span>,</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>this</span>, <span class='macro'>SLOT(slotLoadingComplete())<span class='expansion'>qFlagLocation("1""slotLoadingComplete()" "\0" "/mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels/hotpixelstool.cpp"<br> ":" "234")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line">}</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:1ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Potential leak of memory pointed to by 'item'</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::preparePreview()</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> DImg image = d-&gt;previewWidget-&gt;getOriginalRegionImage();</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>int</span> interpolationMethod = d-&gt;filterMethodCombo-&gt;currentIndex();</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> QList&lt;HotPixel&gt; hotPixelsRegion;</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> QRect area = d-&gt;previewWidget-&gt;getOriginalImageRegionToRender();</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> <span class='keyword'>for</span> (QList&lt;HotPixel&gt;::const_iterator it = d-&gt;hotPixelsList.constBegin() ; it != d-&gt;hotPixelsList.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> HotPixel hp = (*it);</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='keyword'>if</span> (area.contains( hp.rect ))</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> hp.rect.moveTopLeft(QPoint( hp.rect.x()-area.x(), hp.rect.y()-area.y() ));</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> hotPixelsRegion.append(hp);</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> setFilter(<span class='keyword'>dynamic_cast</span>&lt;DImgThreadedFilter*&gt;(<span class='keyword'>new</span> HotPixelFixer(&amp;image, <span class='keyword'>this</span>, hotPixelsRegion, interpolationMethod)));</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::prepareFinal()</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='keyword'>int</span> interpolationMethod = d-&gt;filterMethodCombo-&gt;currentIndex();</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> ImageIface iface;</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> setFilter(<span class='keyword'>dynamic_cast</span>&lt;DImgThreadedFilter*&gt;(<span class='keyword'>new</span> HotPixelFixer(iface.original(), <span class='keyword'>this</span>, d-&gt;hotPixelsList, interpolationMethod)));</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::setPreviewImage()</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> d-&gt;previewWidget-&gt;setPreviewImage(filter()-&gt;getTargetImage());</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::setFinalImage()</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> ImageIface iface;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> iface.setOriginal(<span class='macro'>i18n(<span class='string_literal'>"Hot Pixels Correction"</span>)<span class='expansion'>i18nd("digikam", "Hot Pixels Correction")</span></span>, filter()-&gt;filterAction(), filter()-&gt;getTargetImage());</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"><span class='keyword'>void</span> HotPixelsTool::slotBlackFrame(<span class='keyword'>const</span> QList&lt;HotPixel&gt;&amp; hpList, <span class='keyword'>const</span> QUrl&amp; blackFrameURL)</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> d-&gt;blackFrameURL = blackFrameURL;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> d-&gt;hotPixelsList = hpList;</td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> QPolygon pointList(d-&gt;hotPixelsList.size());</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> QList &lt;HotPixel&gt;::const_iterator it;</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> <span class='keyword'>int</span> i = 0;</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='keyword'>for</span> (it = d-&gt;hotPixelsList.constBegin() ; it != d-&gt;hotPixelsList.constEnd() ; ++it, ++i)</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> pointList.setPoint(i, (*it).rect.center());</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> d-&gt;previewWidget-&gt;setHighLightPoints(pointList);</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> slotPreview();</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line">} <span class='comment'>// namespace DigikamEditorHotPixelsToolPlugin</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-88cc69.html b/static/reports/clang/master/report-e8ed77.html
similarity index 99%
rename from static/reports/clang/master/report-88cc69.html
rename to static/reports/clang/master/report-e8ed77.html
index c54781f96..830a52838 100644
--- a/static/reports/clang/master/report-88cc69.html
+++ b/static/reports/clang/master/report-e8ed77.html
@@ -1,1024 +1,1024 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Called C++ object pointer is null -->
<!-- BUGTYPE Called C++ object pointer is null -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp -->
<!-- FILENAME databaseserver.cpp -->
<!-- FUNCTIONNAME initMysqlDatabase -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 4ebf22200c729a004bd01e2ac4a4f33c -->
<!-- BUGLINE 563 -->
<!-- BUGCOLUMN 17 -->
<!-- BUGPATHLENGTH 23 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 563, column 17</a><br />Called C++ object pointer is null</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name databaseserver.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/libs/database/digikamdatabasecore_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name databaseserver.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/database -I /mnt/devel/GIT/6.x/core/libs/database -I /mnt/devel/GIT/6.x/build.scan/core/libs/database/digikamdatabasecore_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"146": 1, "147": 1, "148": 1, "150": 1, "152": 1, "210": 1, "211": 1, "212": 1, "214": 1, "216": 1, "221": 1, "223": 1, "228": 1, "230": 1, "232": 1, "237": 1, "239": 1, "244": 1, "256": 1, "257": 1, "258": 1, "260": 1, "269": 1, "278": 1, "288": 1, "298": 1, "308": 1, "311": 1, "312": 1, "313": 1, "315": 1, "316": 1, "318": 1, "403": 1, "405": 1, "406": 1, "413": 1, "414": 1, "417": 1, "418": 1, "420": 1, "440": 1, "441": 1, "444": 1, "445": 1, "446": 1, "450": 1, "477": 1, "480": 1, "481": 1, "482": 1, "486": 1, "487": 1, "488": 1, "494": 1, "499": 1, "500": 1, "501": 1, "503": 1, "507": 1, "509": 1, "510": 1, "512": 1, "513": 1, "515": 1, "521": 1, "522": 1, "523": 1, "525": 1, "528": 1, "534": 1, "537": 1, "540": 1, "542": 1, "551": 1, "552": 1, "554": 1, "556": 1, "558": 1, "563": 1, "647": 1, "648": 1, "649": 1, "650": 1, "652": 1, "654": 1, "656": 1, "658": 1, "660": 1, "663": 1}, "4440": {"103": 1}, "4443": {"224": 1, "225": 1, "226": 1, "227": 1}, "4601": {"109": 1, "110": 1, "111": 1}, "4603": {"79": 1, "80": 1, "81": 1, "82": 1, "389": 1, "390": 1, "391": 1, "392": 1, "396": 1}, "12035": {"156": 1, "157": 1, "207": 1, "208": 1, "209": 1}, "16136": {"40": 1, "65": 1}, "17917": {"102": 1}, "18004": {"1115": 1, "1338": 1, "1339": 1, "1340": 1, "1361": 1, "1362": 1, "1363": 1, "1364": 1}, "18296": {"61": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2009-11-14</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Mysql internal database server</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2009-2011 by Holger Foerster &lt;Hamsi2k at freenet dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2010-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2016 by Swati Lodha &lt;swatilodha27 at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='directive'>#include "databaseserver.h"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QCoreApplication&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QStandardPaths&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QDateTime&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;QFileInfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='directive'>#include &lt;QFile&gt;</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QSqlDatabase&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include &lt;QSqlQuery&gt;</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;QSqlError&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include &lt;QtGlobal&gt;</span></td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='directive'>#include &lt;QDir&gt;</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='comment'>// KDE includes</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;klocalizedstring.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "digikam_globals.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dbengineparameters.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "databaseserverstarter.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> DatabaseServer::Private</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> app = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> databaseProcess = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> DbEngineParameters params;</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> DatabaseServerStarter* app;</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> QProcess* databaseProcess;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> QString internalDBName;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> QString mysqldInitPath;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> QString mysqldCmd;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> QString dataDir;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> QString miscDir;</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> QString fileDataDir;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> QString actualConfig;</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> QString globalConfig;</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line">DatabaseServer::DatabaseServer(<span class='keyword'>const</span> DbEngineParameters&amp; params, DatabaseServerStarter* <span class='keyword'>const</span> parent)</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> : QThread(parent),</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> d-&gt;app = parent;</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> d-&gt;params = params;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 86, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; d-&gt;params;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> QString defaultAkDir = DbEngineParameters::internalServerPrivatePath();</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> QString dataDir;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='keyword'>if</span> (d-&gt;params.internalServerPath().isEmpty())</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> dataDir = QDir(defaultAkDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"db_data"</span>));</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 94, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"No internal server data path is given, we will use the default."</span> &lt;&lt; dataDir;</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> dataDir = QDir(d-&gt;params.internalServerPath()).absoluteFilePath(QLatin1String(<span class='string_literal'>".mysql.digikam/db_data"</span>));</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 101, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Internal Server data path:"</span> &lt;&lt; dataDir;</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> d-&gt;internalDBName = QLatin1String(<span class='string_literal'>"digikam"</span>);</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> d-&gt;mysqldInitPath = d-&gt;params.internalServerMysqlInitCmd;</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> d-&gt;mysqldCmd = d-&gt;params.internalServerMysqlServCmd;</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> d-&gt;dataDir = dataDir;</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> d-&gt;miscDir = QDir(defaultAkDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"db_misc"</span>));</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> d-&gt;fileDataDir = QDir(defaultAkDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"file_db_data"</span>));</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> d-&gt;actualConfig = QDir(defaultAkDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"mysql.conf"</span>));</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> d-&gt;globalConfig = QStandardPaths::locate(QStandardPaths::GenericDataLocation,</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> QLatin1String(<span class='string_literal'>"digikam/database/mysql-global.conf"</span>));</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> databaseServerStateEnum = started;</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line">DatabaseServer::~DatabaseServer()</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"><span class='keyword'>void</span> DatabaseServer::run()</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> quint64 runningTime = 0;</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> <span class='keyword'>int</span> debugTime = 0;</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='keyword'>int</span> waitTime = 1;</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='comment'>// Loop to wait for stopping the server.</span></td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> <span class='keyword'>do</span></td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>if</span> (!debugTime)</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 132, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Running"</span> &lt;&lt; runningTime &lt;&lt; <span class='string_literal'>"seconds..."</span>;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> debugTime = 30;</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> QThread::sleep(waitTime);</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> runningTime++;</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> debugTime--;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>while</span> (databaseServerStateEnum != stopped);</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 142, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Shutting down database server"</span>;</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> emit done();</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line">DatabaseServerError DatabaseServer::startDatabaseProcess()</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> DatabaseServerError error;</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">d-&gt;params.isMySQL()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> error = <span class="mrange">startMysqlDatabaseProcess()</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Calling 'DatabaseServer::startMysqlDatabaseProcess'</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> error = DatabaseServerError(DatabaseServerError::NotSupported,</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Database type is not supported."</span>)<span class='expansion'>i18nd("digikam", "Database type is not supported.")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='keyword'>if</span> (error.getErrorType() == DatabaseServerError::StartError)</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> databaseServerStateEnum = notRunning;</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (error.getErrorType() == DatabaseServerError::NotSupported)</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 166, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"This database type is not supported."</span>;</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> databaseServerStateEnum = notRunning;</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> databaseServerStateEnum = running;</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='keyword'>return</span> error;</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"><span class='keyword'>void</span> DatabaseServer::stopDatabaseProcess()</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;databaseProcess)</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> d-&gt;databaseProcess-&gt;terminate();</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>if</span> (d-&gt;databaseProcess-&gt;state() == QProcess::Running &amp;&amp; !d-&gt;databaseProcess-&gt;waitForFinished(5000))</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 188, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Database process will be killed now"</span>;</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> d-&gt;databaseProcess-&gt;kill();</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> d-&gt;databaseProcess-&gt;waitForFinished();</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> d-&gt;databaseProcess-&gt;~QProcess();</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> d-&gt;databaseProcess = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> databaseServerStateEnum = stopped;</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> wait();</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"><span class='keyword'>bool</span> DatabaseServer::isRunning() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>if</span> (d-&gt;databaseProcess == <span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>return</span> (databaseServerStateEnum == running);</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line">DatabaseServerError DatabaseServer::startMysqlDatabaseProcess()</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> DatabaseServerError result;</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> DatabaseServerError error = checkDatabaseDirs();</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">error.getErrorType() != DatabaseServerError::NoErrors</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>return</span> error;</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> error = initMysqlConfig();</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">error.getErrorType() != DatabaseServerError::NoErrors</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='keyword'>return</span> error;</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> removeMysqlLogs();</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> error = createMysqlFiles();</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">error.getErrorType() != DatabaseServerError::NoErrors</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>return</span> error;</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> error = <span class="mrange"><span class="mrange">startMysqlServer()</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Calling 'DatabaseServer::startMysqlServer'</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Returning from 'DatabaseServer::startMysqlServer'</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">error.getErrorType() != DatabaseServerError::NoErrors</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>return</span> error;</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> error = <span class="mrange">initMysqlDatabase()</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Calling 'DatabaseServer::initMysqlDatabase'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> <span class='keyword'>if</span> (error.getErrorType() != DatabaseServerError::NoErrors)</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> <span class='keyword'>return</span> error;</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> databaseServerStateEnum = running;</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line">DatabaseServerError DatabaseServer::checkDatabaseDirs() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> DatabaseServerError result;</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> <span class='keyword'>if</span> (d-&gt;mysqldCmd.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 262, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"No path to mysql server command set in configuration file!"</span>;</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"No path to mysql server command set "<span class='expansion'>i18nd("digikam", "No path to mysql server command set " "in configuration file!"<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='string_literal'><span class='macro'>"in configuration file!"</span>)<span class='expansion'>i18nd("digikam", "No path to mysql server command set " "in configuration file!"<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='keyword'>if</span> (d-&gt;mysqldInitPath.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 271, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"No path to mysql initialization command set in configuration file!"</span>;</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"No path to mysql initialization "<span class='expansion'>i18nd("digikam", "No path to mysql initialization " "command set in configuration file!."<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='string_literal'><span class='macro'>"command set in configuration file!."</span>)<span class='expansion'>i18nd("digikam", "No path to mysql initialization " "command set in configuration file!."<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>if</span> (!QFile::exists(d-&gt;dataDir) &amp;&amp; !QDir().mkpath(d-&gt;dataDir))</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 280, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Cannot create directory "</span></td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> &lt;&lt; d-&gt;dataDir;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Cannot create directory %1"</span>,<span class='expansion'>i18nd("digikam", "Cannot create directory %1", QDir::toNativeSeparators<br>(d-&gt;dataDir))</span></span></td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> <span class='macro'>QDir::toNativeSeparators(d-&gt;dataDir))<span class='expansion'>i18nd("digikam", "Cannot create directory %1", QDir::toNativeSeparators<br>(d-&gt;dataDir))</span></span>);</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='keyword'>if</span> (!QFile::exists(d-&gt;miscDir) &amp;&amp; !QDir().mkpath(d-&gt;miscDir))</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 290, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Cannot create directory "</span></td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> &lt;&lt; d-&gt;miscDir;</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Cannot create directory %1"</span>,<span class='expansion'>i18nd("digikam", "Cannot create directory %1", QDir::toNativeSeparators<br>(d-&gt;miscDir))</span></span></td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='macro'>QDir::toNativeSeparators(d-&gt;miscDir))<span class='expansion'>i18nd("digikam", "Cannot create directory %1", QDir::toNativeSeparators<br>(d-&gt;miscDir))</span></span>);</td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> <span class='keyword'>if</span> (!QFile::exists(d-&gt;fileDataDir) &amp;&amp; !QDir().mkpath(d-&gt;fileDataDir))</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 300, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Cannot create directory "</span></td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> &lt;&lt; d-&gt;fileDataDir;</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Cannot create directory %1"</span>,<span class='expansion'>i18nd("digikam", "Cannot create directory %1", QDir::toNativeSeparators<br>(d-&gt;fileDataDir))</span></span></td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> <span class='macro'>QDir::toNativeSeparators(d-&gt;fileDataDir))<span class='expansion'>i18nd("digikam", "Cannot create directory %1", QDir::toNativeSeparators<br>(d-&gt;fileDataDir))</span></span>);</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line">DatabaseServerError DatabaseServer::initMysqlConfig() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> DatabaseServerError result;</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> QString localConfig = QStandardPaths::locate(QStandardPaths::GenericDataLocation,</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> QLatin1String(<span class='string_literal'>"digikam/database/mysql-local.conf"</span>));</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;globalConfig.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> <span class='keyword'>bool</span> confUpdate = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> <span class='keyword'>bool</span> confShouldUpdate = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> QFile actualFile(d-&gt;actualConfig);</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='comment'>// Update actualconf only if either global or local is newer than actual</span></td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='comment'>// If actual does not yet exist it was initialised with datetime 0</span></td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> <span class='comment'>// so it will get updated too</span></td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> <span class='keyword'>if</span> ((QFileInfo(d-&gt;globalConfig).lastModified() &gt; QFileInfo(actualFile).lastModified()) ||</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> (QFileInfo(localConfig).lastModified() &gt; QFileInfo(actualFile).lastModified()))</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> confShouldUpdate = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 333, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"The mysql configuration is outdated,"</span></td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> &lt;&lt; d-&gt;actualConfig</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> &lt;&lt; <span class='string_literal'>"will be updated."</span>;</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> QFile globalFile(d-&gt;globalConfig);</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> QFile localFile(localConfig);</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class='keyword'>if</span> (globalFile.open(QFile::ReadOnly) &amp;&amp; actualFile.open(QFile::WriteOnly))</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> actualFile.write(globalFile.readAll());</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 343, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Updated mysql configuration with"</span> &lt;&lt; d-&gt;globalConfig;</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>if</span> (!localConfig.isEmpty() &amp;&amp; localFile.open(QFile::ReadOnly))</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 347, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Updated mysql configuration with"</span> &lt;&lt; localConfig;</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> actualFile.write(localFile.readAll());</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> localFile.close();</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> globalFile.close();</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> actualFile.close();</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> confUpdate = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='comment'>// MySQL doesn't like world writeable config files (which makes sense), but</span></td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> <span class='comment'>// our config file somehow ends up being world-writable on some systems for no</span></td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> <span class='comment'>// apparent reason nevertheless, so fix that</span></td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> <span class='keyword'>if</span> (confUpdate)</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>const</span> QFile::Permissions allowedPerms</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> = actualFile.permissions()</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> &amp; (QFile::ReadOwner | QFile::WriteOwner |</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> QFile::ReadGroup | QFile::WriteGroup | QFile::ReadOther);</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> <span class='keyword'>if</span> (allowedPerms != actualFile.permissions())</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> actualFile.setPermissions(allowedPerms);</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 373, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Fixed permissions of mysql configuration file."</span>;</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (confShouldUpdate)</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 378, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Unable to create MySQL server configuration file."</span></td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> &lt;&lt; <span class='string_literal'>"This means that either the default configuration file"</span></td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> &lt;&lt; d-&gt;globalConfig</td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> &lt;&lt; <span class='string_literal'>"was not readable or the target file"</span></td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> &lt;&lt; d-&gt;actualConfig</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> &lt;&lt; <span class='string_literal'>"could not be written."</span>;</td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> QString errorMsg = <span class='macro'>i18n(<span class='string_literal'>"Unable to create MySQL server configuration file."<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;%1&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;was not readable or the target file&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;%2&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;could not be written.&lt;/p&gt;"</span>,<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span></td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> <span class='macro'>d-&gt;globalConfig, d-&gt;actualConfig)<span class='expansion'>i18nd("digikam", "Unable to create MySQL server configuration file."<br> "&lt;p&gt;This means that either the default configuration file&lt;/p&gt;"<br> "&lt;p&gt;%1&lt;/p&gt;" "&lt;p&gt;was not readable or the target file&lt;/p&gt;"<br> "&lt;p&gt;%2&lt;/p&gt;" "&lt;p&gt;could not be written.&lt;/p&gt;"<br>, d-&gt;globalConfig, d-&gt;actualConfig)</span></span>;</td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError, errorMsg);</td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 397, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"The mysql configuration was already up-to-date:"</span></td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> &lt;&lt; d-&gt;actualConfig;</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 403, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Cannot find MySQL server default configuration (mysql-global.conf)"</span>;</td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Cannot find MySQL server default "<span class='expansion'>i18nd("digikam", "Cannot find MySQL server default " "configuration (mysql-global.conf)."<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> <span class='string_literal'><span class='macro'>"configuration (mysql-global.conf)."</span>)<span class='expansion'>i18nd("digikam", "Cannot find MySQL server default " "configuration (mysql-global.conf)."<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"><span class='keyword'>void</span> DatabaseServer::removeMysqlLogs() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> <span class='comment'>// Move mysql error log file out of the way</span></td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> <span class='keyword'>const</span> QFileInfo errorLog(d-&gt;dataDir,</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> QLatin1String(<span class='string_literal'>"mysql.err"</span>));</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> <span class='keyword'>if</span> (errorLog.exists())</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> QFile logFile(errorLog.absoluteFilePath());</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> QFile oldLogFile(QDir(d-&gt;dataDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"mysql.err.old"</span>)));</td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> <span class='keyword'>if</span> (logFile.open(QFile::ReadOnly) &amp;&amp; oldLogFile.open(QFile::Append))</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> oldLogFile.write(logFile.readAll());</td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> oldLogFile.close();</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> logFile.close();</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> logFile.remove();</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 434, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Failed to open MySQL error log."</span>;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> <span class='comment'>// Clear mysql ib_logfile's in case innodb_log_file_size option changed in last confUpdate</span></td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> QFile(QDir(d-&gt;dataDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"ib_logfile0"</span>))).remove();</td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> QFile(QDir(d-&gt;dataDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"ib_logfile1"</span>))).remove();</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line">DatabaseServerError DatabaseServer::createMysqlFiles() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> DatabaseServerError result;</td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> <span class='comment'>// Initialize the database</span></td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> <span class='keyword'>if</span> (!QFile(QDir(d-&gt;dataDir).absoluteFilePath(QLatin1String(<span class='string_literal'>"mysql"</span>))).exists())</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> <span class='comment'>// Synthesize the server initialization command line arguments</span></td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> QStringList mysqlInitCmdArgs;</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> mysqlInitCmdArgs &lt;&lt; QDir::toNativeSeparators(QString::fromLatin1(<span class='string_literal'>"--datadir=%1"</span>).arg(d-&gt;dataDir));</td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"><span class='directive'>#ifndef Q_OS_WIN</span></td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> mysqlInitCmdArgs &lt;&lt; QDir::toNativeSeparators(QString::fromLatin1(<span class='string_literal'>"--defaults-file=%1"</span>).arg(d-&gt;globalConfig));</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> QProcess initProcess;</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> initProcess.setProcessEnvironment(adjustedEnvironmentForAppImage());</td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> initProcess.start(d-&gt;mysqldInitPath, mysqlInitCmdArgs);</td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 465, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Database initializer:"</span></td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> &lt;&lt; initProcess.program()</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> &lt;&lt; initProcess.arguments();</td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> <span class='keyword'>if</span> (!initProcess.waitForFinished() || initProcess.exitCode() != 0)</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> processErrorLog(&amp;initProcess,</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Could not start database initializer."</span>)<span class='expansion'>i18nd("digikam", "Could not start database initializer.")</span></span>));</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line">DatabaseServerError DatabaseServer::startMysqlServer()</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> DatabaseServerError result;</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='comment'>// Synthesize the server command line arguments</span></td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> QStringList mysqldCmdArgs;</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> mysqldCmdArgs &lt;&lt; QDir::toNativeSeparators(QString::fromLatin1(<span class='string_literal'>"--defaults-file=%1"</span>).arg(d-&gt;actualConfig))</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> &lt;&lt; QDir::toNativeSeparators(QString::fromLatin1(<span class='string_literal'>"--datadir=%1"</span>).arg(d-&gt;dataDir));</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"><span class='directive'>#ifdef Q_OS_WIN</span></td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> mysqldCmdArgs &lt;&lt; QLatin1String(<span class='string_literal'>"--skip-networking=0"</span>)</td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> &lt;&lt; QLatin1String(<span class='string_literal'>"--port=3307"</span>);</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> mysqldCmdArgs &lt;&lt; QString::fromLatin1(<span class='string_literal'>"--socket=%1/mysql.socket"</span>).arg(d-&gt;miscDir);</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> <span class='comment'>// Start the database server</span></td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> d-&gt;databaseProcess = <span class='keyword'>new</span> QProcess();</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> d-&gt;databaseProcess-&gt;setProcessEnvironment(adjustedEnvironmentForAppImage());</td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> d-&gt;databaseProcess-&gt;start(d-&gt;mysqldCmd, mysqldCmdArgs);</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 503, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Database server:"</span></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Loop condition is false. Execution continues on line 507</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> &lt;&lt; d-&gt;databaseProcess-&gt;program()</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> &lt;&lt; d-&gt;databaseProcess-&gt;arguments();</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!d-&gt;databaseProcess-&gt;waitForStarted()</span> || d-&gt;databaseProcess-&gt;exitCode() != 0)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> QString errorMsg = processErrorLog(d-&gt;databaseProcess,</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Could not start database server."</span>)<span class='expansion'>i18nd("digikam", "Could not start database server.")</span></span>);</td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> <span class='keyword'>delete</span> d-&gt;databaseProcess;</td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> <span class="mrange">d-&gt;databaseProcess = <span class='keyword'>nullptr</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Null pointer value stored to field 'databaseProcess'</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError, errorMsg);</td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line">DatabaseServerError DatabaseServer::initMysqlDatabase() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> DatabaseServerError result;</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>const</span> QLatin1String initCon(<span class='string_literal'>"initConnection"</span>);</td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> QSqlDatabase db = QSqlDatabase::addDatabase(DbEngineParameters::MySQLDatabaseType(), initCon);</td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"><span class='directive'>#ifdef Q_OS_WIN</span></td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> db.setHostName(QLatin1String(<span class='string_literal'>"localhost"</span>));</td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> db.setPort(3307);</td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"><span class='directive'>#else</span></td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> db.setConnectOptions(QString::fromLatin1(<span class='string_literal'>"UNIX_SOCKET=%1/mysql.socket"</span>).arg(d-&gt;miscDir));</td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"><span class='directive'>#endif</span></td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> db.setUserName(QLatin1String(<span class='string_literal'>"root"</span>));</td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> <span class='comment'>// might not exist yet, then connecting to the actual db will fail</span></td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> db.setDatabaseName(QString());</td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!db.isValid()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 544, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Invalid database object during database server startup"</span>;</td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError,</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Invalid database object during database "<span class='expansion'>i18nd("digikam", "Invalid database object during database " "server startup"<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='string_literal'><span class='macro'>"server startup"</span>)<span class='expansion'>i18nd("digikam", "Invalid database object during database " "server startup"<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> <span class='keyword'>bool</span> opened = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> <span class='keyword'>bool</span> exited = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; 120 ; ++i)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> opened = db.open();</td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">opened</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Assuming 'opened' is 0</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#EndPath" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">d-&gt;databaseProcess</span>-&gt;waitForFinished(500))</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Called C++ object pointer is null</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"> exited = <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='keyword'>if</span> (!opened)</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> QString firstLine;</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> QString errorMsg;</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>if</span> (exited)</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> errorMsg = processErrorLog(d-&gt;databaseProcess,</td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Database process exited unexpectedly "<span class='expansion'>i18nd("digikam", "Database process exited unexpectedly " "during initial connection."<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='string_literal'><span class='macro'>"during initial connection."</span>)<span class='expansion'>i18nd("digikam", "Database process exited unexpectedly " "during initial connection."<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> errorMsg = processErrorLog(d-&gt;databaseProcess,</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> <span class='macro'>i18n(<span class='string_literal'>"Could not connect to Database after "<span class='expansion'>i18nd("digikam", "Could not connect to Database after " "trying for 60 seconds."<br>)</span></span></span></td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='string_literal'><span class='macro'>"trying for 60 seconds."</span>)<span class='expansion'>i18nd("digikam", "Could not connect to Database after " "trying for 60 seconds."<br>)</span></span>);</td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError, errorMsg);</td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> QSqlQuery query(db);</td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> <span class='keyword'>if</span> (!query.exec(QString::fromLatin1(<span class='string_literal'>"USE %1;"</span>).arg(d-&gt;internalDBName)))</td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 595, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Failed to use database"</span></td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line"> &lt;&lt; d-&gt;internalDBName;</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 597, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Query error:"</span></td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"> &lt;&lt; query.lastError().text();</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 599, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Database error:"</span></td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line"> &lt;&lt; db.lastError().text();</td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 601, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Trying to create database now"</span>;</td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line"> <span class='keyword'>if</span> (query.exec(QString::fromLatin1(<span class='string_literal'>"CREATE DATABASE %1;"</span>).arg(d-&gt;internalDBName)))</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 605, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Database was successfully created"</span>;</td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 609, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Failed to create database"</span>;</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 610, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Query error:"</span></td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> &lt;&lt; query.lastError().text();</td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 612, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Database error:"</span></td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> &lt;&lt; db.lastError().text();</td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> QString errorMsg = <span class='macro'>i18n(<span class='string_literal'>"Failed to create database"<span class='expansion'>i18nd("digikam", "Failed to create database" "&lt;p&gt;Query error: %1&lt;/p&gt;"<br> "&lt;p&gt;Database error: %2&lt;/p&gt;", query.lastError().text<br>(), db.lastError().text())</span></span></span></td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;Query error: %1&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "Failed to create database" "&lt;p&gt;Query error: %1&lt;/p&gt;"<br> "&lt;p&gt;Database error: %2&lt;/p&gt;", query.lastError().text<br>(), db.lastError().text())</span></span></span></td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;Database error: %2&lt;/p&gt;"</span>,<span class='expansion'>i18nd("digikam", "Failed to create database" "&lt;p&gt;Query error: %1&lt;/p&gt;"<br> "&lt;p&gt;Database error: %2&lt;/p&gt;", query.lastError().text<br>(), db.lastError().text())</span></span></td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='macro'>query.lastError().text(),<span class='expansion'>i18nd("digikam", "Failed to create database" "&lt;p&gt;Query error: %1&lt;/p&gt;"<br> "&lt;p&gt;Database error: %2&lt;/p&gt;", query.lastError().text<br>(), db.lastError().text())</span></span></td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='macro'>db.lastError().text())<span class='expansion'>i18nd("digikam", "Failed to create database" "&lt;p&gt;Query error: %1&lt;/p&gt;"<br> "&lt;p&gt;Database error: %2&lt;/p&gt;", query.lastError().text<br>(), db.lastError().text())</span></span>;</td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> <span class='keyword'>return</span> DatabaseServerError(DatabaseServerError::StartError, errorMsg);</td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> <span class='comment'>// Make sure query is destroyed before we close the db</span></td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> db.close();</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> QSqlDatabase::removeDatabase(initCon);</td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> <span class='keyword'>return</span> result;</td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line">QString DatabaseServer::getcurrentAccountUserName() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> QString name = QString::fromUtf8(qgetenv(<span class='string_literal'>"USER"</span>)); <span class='comment'>// Linux and OSX</span></td></tr>
<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> <span class='keyword'>if</span> (name.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"> name = QString::fromUtf8(qgetenv(<span class='string_literal'>"USERNAME"</span>)); <span class='comment'>// Windows</span></td></tr>
<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> <span class='keyword'>return</span> name;</td></tr>
<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line">QString DatabaseServer::processErrorLog(QProcess* <span class='keyword'>const</span> process, <span class='keyword'>const</span> QString&amp; msg) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 649, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; msg;</td></tr>
<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 650, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Executable:"</span></td></tr>
<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> &lt;&lt; process-&gt;program();</td></tr>
<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 652, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Arguments:"</span></td></tr>
<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> &lt;&lt; process-&gt;arguments().join(QLatin1String(<span class='string_literal'>", "</span>));</td></tr>
<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 654, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Stdout:"</span></td></tr>
<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> &lt;&lt; process-&gt;readAllStandardOutput();</td></tr>
<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 656, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Stderr:"</span></td></tr>
<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> &lt;&lt; process-&gt;readAllStandardError();</td></tr>
<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 658, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Exit code:"</span></td></tr>
<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line"> &lt;&lt; process-&gt;exitCode();</td></tr>
<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> <span class='macro'>qCDebug(DIGIKAM_DATABASESERVER_LOG)<span class='expansion'>for (bool qt_category_enabled = DIGIKAM_DATABASESERVER_LOG().<br>isDebugEnabled(); qt_category_enabled; qt_category_enabled = false<br>) QMessageLogger("/mnt/devel/GIT/6.x/core/libs/database/server/databaseserver.cpp"<br>, 660, __PRETTY_FUNCTION__, DIGIKAM_DATABASESERVER_LOG().categoryName<br>()).debug()</span></span> &lt;&lt; <span class='string_literal'>"Process error:"</span></td></tr>
<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"> &lt;&lt; process-&gt;errorString();</td></tr>
<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>return</span> <span class='macro'>i18n(<span class='string_literal'>"%1"<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></span></td></tr>
<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;Executable: %2&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></span></td></tr>
<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;Arguments: %3&lt;/p&gt;"<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></span></td></tr>
<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> <span class='string_literal'><span class='macro'>"&lt;p&gt;Process error: %4&lt;/p&gt;"</span>,<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></td></tr>
<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line"> <span class='macro'>msg,<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></td></tr>
<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='macro'>process-&gt;program(),<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></td></tr>
<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> <span class='macro'>process-&gt;arguments().join(QLatin1String(<span class='string_literal'>", "</span>)),<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span></td></tr>
<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> <span class='macro'>process-&gt;errorString())<span class='expansion'>i18nd("digikam", "%1" "&lt;p&gt;Executable: %2&lt;/p&gt;" "&lt;p&gt;Arguments: %3&lt;/p&gt;"<br> "&lt;p&gt;Process error: %4&lt;/p&gt;", msg, process-&gt;program<br>(), process-&gt;arguments().join(QLatin1String(", ")), process<br>-&gt;errorString())</span></span>;</td></tr>
<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-ecf0a2.html b/static/reports/clang/master/report-ecf0a2.html
deleted file mode 100644
index ed80292d2..000000000
--- a/static/reports/clang/master/report-ecf0a2.html
+++ /dev/null
@@ -1,905 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<title>/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp</title>
-
-<style type="text/css">
-body { color:#000000; background-color:#ffffff }
-body { font-family:Helvetica, sans-serif; font-size:10pt }
-h1 { font-size:14pt }
-.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
-.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
-.FileNav a { text-decoration:none; font-size: larger; }
-.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
-.divider { background-color: gray; }
-.code { border-collapse:collapse; width:100%; }
-.code { font-family: "Monospace", monospace; font-size:10pt }
-.code { line-height: 1.2em }
-.comment { color: green; font-style: oblique }
-.keyword { color: blue }
-.string_literal { color: red }
-.directive { color: darkmagenta }
-/* Macro expansions. */
-.expansion { display: none; }
-.macro:hover .expansion {
- display: block;
- border: 2px solid #FF0000;
- padding: 2px;
- background-color:#FFF0F0;
- font-weight: normal;
- -webkit-border-radius:5px;
- -webkit-box-shadow:1px 1px 7px #000;
- border-radius:5px;
- box-shadow:1px 1px 7px #000;
- position: absolute;
- top: -1em;
- left:10em;
- z-index: 1
-}
-
-#tooltiphint {
- position: fixed;
- width: 50em;
- margin-left: -25em;
- left: 50%;
- padding: 10px;
- border: 1px solid #b0b0b0;
- border-radius: 2px;
- box-shadow: 1px 1px 7px black;
- background-color: #c0c0c0;
- z-index: 2;
-}
-.macro {
- color: darkmagenta;
- background-color:LemonChiffon;
- /* Macros are position: relative to provide base for expansions. */
- position: relative;
-}
-
-.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
-.num { text-align:right; font-size:8pt }
-.num { color:#444444 }
-.line { padding-left: 1ex; border-left: 3px solid #ccc }
-.line { white-space: pre }
-.msg { -webkit-box-shadow:1px 1px 7px #000 }
-.msg { box-shadow:1px 1px 7px #000 }
-.msg { -webkit-border-radius:5px }
-.msg { border-radius:5px }
-.msg { font-family:Helvetica, sans-serif; font-size:8pt }
-.msg { float:left }
-.msg { padding:0.25em 1ex 0.25em 1ex }
-.msg { margin-top:10px; margin-bottom:10px }
-.msg { font-weight:bold }
-.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
-.msgT { padding:0x; spacing:0x }
-.msgEvent { background-color:#fff8b4; color:#000000 }
-.msgControl { background-color:#bbbbbb; color:#000000 }
-.msgNote { background-color:#ddeeff; color:#000000 }
-.mrange { background-color:#dfddf3 }
-.mrange { border-bottom:1px solid #6F9DBE }
-.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
-.PathIndex { -webkit-border-radius:8px }
-.PathIndex { border-radius:8px }
-.PathIndexEvent { background-color:#bfba87 }
-.PathIndexControl { background-color:#8c8c8c }
-.PathNav a { text-decoration:none; font-size: larger }
-.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
-.CodeRemovalHint { background-color:#de1010 }
-.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
-.selected{ background-color:orange !important; }
-
-table.simpletable {
- padding: 5px;
- font-size:12pt;
- margin:20px;
- border-collapse: collapse; border-spacing: 0px;
-}
-td.rowname {
- text-align: right;
- vertical-align: top;
- font-weight: bold;
- color:#444444;
- padding-right:2ex;
-}
-
-/* Hidden text. */
-input.spoilerhider + label {
- cursor: pointer;
- text-decoration: underline;
- display: block;
-}
-input.spoilerhider {
- display: none;
-}
-input.spoilerhider ~ .spoiler {
- overflow: hidden;
- margin: 10px auto 0;
- height: 0;
- opacity: 0;
-}
-input.spoilerhider:checked + label + .spoiler{
- height: auto;
- opacity: 1;
-}
-</style>
-</head>
-<body>
-<!-- BUGDESC Array access (from variable 'dst16') results in a null pointer dereference -->
-
-<!-- BUGTYPE Dereference of null pointer -->
-
-<!-- BUGCATEGORY Logic error -->
-
-<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp -->
-
-<!-- FILENAME dimgheifloader_load.cpp -->
-
-<!-- FUNCTIONNAME readHEICImageByHandle -->
-
-<!-- ISSUEHASHCONTENTOFLINEINCONTEXT 7a6c4528fe16d9d6e52b9d7f2774726b -->
-
-<!-- BUGLINE 473 -->
-
-<!-- BUGCOLUMN 26 -->
-
-<!-- BUGPATHLENGTH 47 -->
-
-<!-- BUGMETAEND -->
-<!-- REPORTHEADER -->
-<h3>Bug Summary</h3>
-<table class="simpletable">
-<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp</td></tr>
-<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 473, column 26</a><br />Array access (from variable 'dst16') results in a null pointer dereference</td></tr>
-
-</table>
-<!-- REPORTSUMMARYEXTRA -->
-<h3>Annotated Source Code</h3>
-<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
- to see keyboard shortcuts</p>
-<input type="checkbox" class="spoilerhider" id="showinvocation" />
-<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimgheifloader_load.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -D DImg_HEIF_Plugin_EXPORTS -D HAVE_INTTYPES_H -D HAVE_LIBDE265=1 -D HAVE_MALLOC_H -D HAVE_POSIX_MEMALIGN -D HAVE_STDBOOL_H -D HAVE_STDDEF_H -D HAVE_STDINT_H -D HAVE_STRINGS_H -D HAVE_UNISTD_H -D HAVE_X265=1 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CORE_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_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/heif/DImg_HEIF_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/dimg/heif -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp -faddrsig
-</div>
-<div id='tooltiphint' hidden="true">
- <p>Keyboard shortcuts: </p>
- <ul>
- <li>Use 'j/k' keys for keyboard navigation</li>
- <li>Use 'Shift+S' to show/hide relevant lines</li>
- <li>Use '?' to toggle this window</li>
- </ul>
- <a href="#" onclick="toggleHelp(); return false;">Close</a>
-</div>
-<script type='text/javascript'>
-var relevant_lines = {"1": {"45": 1, "46": 1, "47": 1, "49": 1, "51": 1, "53": 1, "60": 1, "62": 1, "64": 1, "72": 1, "83": 1, "85": 1, "93": 1, "95": 1, "96": 1, "97": 1, "98": 1, "100": 1, "108": 1, "110": 1, "118": 1, "266": 1, "267": 1, "268": 1, "269": 1, "270": 1, "271": 1, "272": 1, "273": 1, "275": 1, "282": 1, "287": 1, "292": 1, "297": 1, "319": 1, "321": 1, "328": 1, "329": 1, "330": 1, "333": 1, "334": 1, "335": 1, "336": 1, "337": 1, "338": 1, "341": 1, "342": 1, "343": 1, "344": 1, "345": 1, "347": 1, "348": 1, "350": 1, "351": 1, "353": 1, "359": 1, "364": 1, "366": 1, "367": 1, "368": 1, "369": 1, "371": 1, "372": 1, "373": 1, "374": 1, "376": 1, "383": 1, "384": 1, "386": 1, "387": 1, "389": 1, "397": 1, "399": 1, "400": 1, "402": 1, "403": 1, "419": 1, "425": 1, "428": 1, "433": 1, "434": 1, "435": 1, "436": 1, "437": 1, "439": 1, "441": 1, "442": 1, "444": 1, "446": 1, "473": 1}, "4419": {"68": 1, "69": 1, "91": 1, "92": 1}, "4522": {"68": 1, "71": 1, "122": 1, "137": 1, "145": 1}, "9519": {"119": 1, "127": 1, "128": 1}, "18497": {"88": 1, "89": 1, "90": 1}, "19232": {"125": 1, "137": 1, "145": 1, "146": 1, "153": 1, "161": 1}, "48488": {"255": 1}};
-
-var filterCounterexample = function (hide) {
- var tables = document.getElementsByClassName("code");
- for (var t=0; t<tables.length; t++) {
- var table = tables[t];
- var file_id = table.getAttribute("data-fileid");
- var lines_in_fid = relevant_lines[file_id];
- if (!lines_in_fid) {
- lines_in_fid = {};
- }
- var lines = table.getElementsByClassName("codeline");
- for (var i=0; i<lines.length; i++) {
- var el = lines[i];
- var lineNo = el.getAttribute("data-linenumber");
- if (!lines_in_fid[lineNo]) {
- if (hide) {
- el.setAttribute("hidden", "");
- } else {
- el.removeAttribute("hidden");
- }
- }
- }
- }
-}
-
-window.addEventListener("keydown", function (event) {
- if (event.defaultPrevented) {
- return;
- }
- if (event.key == "S") {
- var checked = document.getElementsByName("showCounterexample")[0].checked;
- filterCounterexample(!checked);
- document.getElementsByName("showCounterexample")[0].checked = !checked;
- } else {
- return;
- }
- event.preventDefault();
-}, true);
-
-document.addEventListener("DOMContentLoaded", function() {
- document.querySelector('input[name="showCounterexample"]').onchange=
- function (event) {
- filterCounterexample(this.checked);
- };
-});
-</script>
-
-<form>
- <input type="checkbox" name="showCounterexample" id="showCounterexample" />
- <label for="showCounterexample">
- Show only relevant lines
- </label>
-</form>
-
-<script type='text/javascript'>
-var digitMatcher = new RegExp("[0-9]+");
-
-document.addEventListener("DOMContentLoaded", function() {
- document.querySelectorAll(".PathNav > a").forEach(
- function(currentValue, currentIndex) {
- var hrefValue = currentValue.getAttribute("href");
- currentValue.onclick = function() {
- scrollTo(document.querySelector(hrefValue));
- return false;
- };
- });
-});
-
-var findNum = function() {
- var s = document.querySelector(".selected");
- if (!s || s.id == "EndPath") {
- return 0;
- }
- var out = parseInt(digitMatcher.exec(s.id)[0]);
- return out;
-};
-
-var scrollTo = function(el) {
- document.querySelectorAll(".selected").forEach(function(s) {
- s.classList.remove("selected");
- });
- el.classList.add("selected");
- window.scrollBy(0, el.getBoundingClientRect().top -
- (window.innerHeight / 2));
-}
-
-var move = function(num, up, numItems) {
- if (num == 1 && up || num == numItems - 1 && !up) {
- return 0;
- } else if (num == 0 && up) {
- return numItems - 1;
- } else if (num == 0 && !up) {
- return 1 % numItems;
- }
- return up ? num - 1 : num + 1;
-}
-
-var numToId = function(num) {
- if (num == 0) {
- return document.getElementById("EndPath")
- }
- return document.getElementById("Path" + num);
-};
-
-var navigateTo = function(up) {
- var numItems = document.querySelectorAll(
- ".line > .msgEvent, .line > .msgControl").length;
- var currentSelected = findNum();
- var newSelected = move(currentSelected, up, numItems);
- var newEl = numToId(newSelected, numItems);
-
- // Scroll element into center.
- scrollTo(newEl);
-};
-
-window.addEventListener("keydown", function (event) {
- if (event.defaultPrevented) {
- return;
- }
- if (event.key == "j") {
- navigateTo(/*up=*/false);
- } else if (event.key == "k") {
- navigateTo(/*up=*/true);
- } else {
- return;
- }
- event.preventDefault();
-}, true);
-</script>
-
-<script type='text/javascript'>
-
-var toggleHelp = function() {
- var hint = document.querySelector("#tooltiphint");
- var attributeName = "hidden";
- if (hint.hasAttribute(attributeName)) {
- hint.removeAttribute(attributeName);
- } else {
- hint.setAttribute("hidden", "true");
- }
-};
-window.addEventListener("keydown", function (event) {
- if (event.defaultPrevented) {
- return;
- }
- if (event.key == "?") {
- toggleHelp();
- } else {
- return;
- }
- event.preventDefault();
-});
-</script>
-<table class="code" data-fileid="1">
-<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
-<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
-<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
-<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
-<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
-<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2019-09-26</span></td></tr>
-<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : A HEIF IO file for DImg framework - load operations</span></td></tr>
-<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
-<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>*</span></td></tr>
-<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
-<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
-<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
-<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
-<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
-<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
-<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
-<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
-<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
-<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
-<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
-<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
-<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "dimgheifloader.h"</span></td></tr>
-<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
-<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;QFile&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"><span class='directive'>#include &lt;QVariant&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;QByteArray&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;QTextStream&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QDataStream&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='directive'>#include &lt;qplatformdefs.h&gt;</span></td></tr>
-<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
-<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
-<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
-<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='directive'>#include "dimgloaderobserver.h"</span></td></tr>
-<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include "metaengine.h"</span></td></tr>
-<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
-<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line">{</td></tr>
-<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"><span class='keyword'>bool</span> DImgHEIFLoader::load(<span class='keyword'>const</span> QString&amp; filePath, DImgLoaderObserver* <span class='keyword'>const</span> observer)</td></tr>
-<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line">{</td></tr>
-<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> m_observer = observer;</td></tr>
-<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> readMetadata(filePath);</td></tr>
-<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> FILE* <span class='keyword'>const</span> file = fopen(QFile::encodeName(filePath).constData(), <span class='string_literal'>"rb"</span>);</td></tr>
-<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!file</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming 'file' is non-null</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 55, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Error: Could not open source file."</span>;</td></tr>
-<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> headerLen = 12;</td></tr>
-<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>char</span> header[headerLen];</td></tr>
-<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">fread(&amp;header, headerLen, 1, file) != 1</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 66, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Error: Could not parse magic identifier."</span>;</td></tr>
-<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> fclose(file);</td></tr>
-<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">memcmp(&amp;header[4], <span class='string_literal'>"ftyp"</span>, 4) != 0</span>) &amp;&amp;</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> (memcmp(&amp;header[8], <span class='string_literal'>"heic"</span>, 4) != 0) &amp;&amp;</td></tr>
-<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> (memcmp(&amp;header[8], <span class='string_literal'>"heix"</span>, 4) != 0) &amp;&amp;</td></tr>
-<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> (memcmp(&amp;header[8], <span class='string_literal'>"mif1"</span>, 4) != 0))</td></tr>
-<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 77, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Error: source file is not HEIC image."</span>;</td></tr>
-<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> fclose(file);</td></tr>
-<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> fclose(file);</td></tr>
-<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">observer</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming 'observer' is null</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> observer-&gt;progressInfo(m_image, 0.1F);</td></tr>
-<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> <span class='comment'>// -------------------------------------------------------------------</span></td></tr>
-<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='comment'>// Initialize HEIF API.</span></td></tr>
-<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> heif_item_id primary_image_id;</td></tr>
-<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> <span class='keyword'>struct</span> heif_context* <span class='keyword'>const</span> heif_context = heif_context_alloc();</td></tr>
-<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='keyword'>struct</span> heif_error error = heif_context_read_from_file(heif_context,</td></tr>
-<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> QFile::encodeName(filePath).constData(),</td></tr>
-<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>nullptr</span>);</td></tr>
-<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!isHeifSuccess(&amp;error)</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 102, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Error: Could not read source file."</span>;</td></tr>
-<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> heif_context_free(heif_context);</td></tr>
-<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> error = heif_context_get_primary_image_ID(heif_context, &amp;primary_image_id);</td></tr>
-<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!isHeifSuccess(&amp;error)</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 112, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Error: Could not load image data."</span>;</td></tr>
-<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> heif_context_free(heif_context);</td></tr>
-<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> <span class='keyword'>return</span> (<span class="mrange">readHEICImageByID(heif_context, primary_image_id)</span>);</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Calling 'DImgHEIFLoader::readHEICImageByID'</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"><span class='keyword'>bool</span> DImgHEIFLoader::readHEICColorProfile(<span class='keyword'>struct</span> heif_image_handle* <span class='keyword'>const</span> image_handle)</td></tr>
-<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line">{</td></tr>
-<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='directive'>#if <span class='macro'>LIBHEIF_NUMERIC_VERSION<span class='expansion'>0x01050100</span></span> &gt;= 0x01040000</span></td></tr>
-<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>switch</span> (heif_image_handle_get_color_profile_type(image_handle))</td></tr>
-<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> <span class='keyword'>case</span> heif_color_profile_type_not_present:</td></tr>
-<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>case</span> heif_color_profile_type_rICC:</td></tr>
-<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> <span class='keyword'>case</span> heif_color_profile_type_prof:</td></tr>
-<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> size_t length = heif_image_handle_get_raw_color_profile_size(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> <span class='keyword'>if</span> (length &gt; 0)</td></tr>
-<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='comment'>// Read color profile.</span></td></tr>
-<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> QByteArray profile;</td></tr>
-<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> profile.resize(length);</td></tr>
-<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>struct</span> heif_error error = heif_image_handle_get_raw_color_profile(image_handle,</td></tr>
-<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> profile.data());</td></tr>
-<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> <span class='keyword'>if</span> (error.code == 0)</td></tr>
-<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 147, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC color profile found with size:"</span> &lt;&lt; length;</td></tr>
-<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> imageSetIccProfile(IccProfile(profile));</td></tr>
-<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> <span class='keyword'>default</span>: <span class='comment'>// heif_color_profile_type_nclx</span></td></tr>
-<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 157, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Unknown HEIC color profile type discarded"</span>;</td></tr>
-<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
-<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"><span class='directive'>#else</span></td></tr>
-<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> <span class='macro'>Q_UNUSED(image_handle)<span class='expansion'>(void)image_handle;</span></span>;</td></tr>
-<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='directive'>#endif</span></td></tr>
-<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> <span class='comment'>// If ICC profile is null, check Exif metadata.</span></td></tr>
-<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>if</span> (checkExifWorkingColorSpace())</td></tr>
-<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"><span class='keyword'>bool</span> DImgHEIFLoader::readHEICMetadata(<span class='keyword'>struct</span> heif_image_handle* <span class='keyword'>const</span> image_handle)</td></tr>
-<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line">{</td></tr>
-<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> heif_item_id dataIds[10];</td></tr>
-<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> QByteArray exif;</td></tr>
-<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> QByteArray xmp;</td></tr>
-<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> <span class='keyword'>int</span> count = heif_image_handle_get_list_of_metadata_block_IDs(image_handle,</td></tr>
-<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>nullptr</span>,</td></tr>
-<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> dataIds,</td></tr>
-<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> 10);</td></tr>
-<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> <span class='keyword'>if</span> (count &gt; 0)</td></tr>
-<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; count ; ++i)</td></tr>
-<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> <span class='keyword'>if</span> (QLatin1String(heif_image_handle_get_metadata_type(image_handle, dataIds[i])) == QLatin1String(<span class='string_literal'>"Exif"</span>))</td></tr>
-<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> <span class='comment'>// Read Exif chunk.</span></td></tr>
-<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> size_t length = heif_image_handle_get_metadata_size(image_handle, dataIds[i]);</td></tr>
-<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> QByteArray exifChunk;</td></tr>
-<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> exifChunk.resize(length);</td></tr>
-<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> <span class='keyword'>struct</span> heif_error error = heif_image_handle_get_metadata(image_handle,</td></tr>
-<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> dataIds[i],</td></tr>
-<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> exifChunk.data());</td></tr>
-<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>if</span> ((error.code == 0) &amp;&amp; (length &gt; 4))</td></tr>
-<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> <span class='comment'>// The first 4 bytes indicate the</span></td></tr>
-<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='comment'>// offset to the start of the TIFF header of the Exif data.</span></td></tr>
-<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>int</span> skip = ((exifChunk.constData()[0] &lt;&lt; 24) |</td></tr>
-<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> (exifChunk.constData()[1] &lt;&lt; 16) |</td></tr>
-<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> (exifChunk.constData()[2] &lt;&lt; 8) |</td></tr>
-<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> exifChunk.constData()[3]) + 4;</td></tr>
-<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>if</span> (exifChunk.size() &gt; skip)</td></tr>
-<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='comment'>// Copy the real exif data into the byte array</span></td></tr>
-<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 216, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC exif container found with size:"</span> &lt;&lt; length - skip;</td></tr>
-<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> exif.append((<span class='keyword'>char</span>*)(exifChunk.data() + skip), exifChunk.size() - skip);</td></tr>
-<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> <span class='keyword'>if</span> (</td></tr>
-<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> (QLatin1String(heif_image_handle_get_metadata_type(image_handle, dataIds[i])) == QLatin1String(<span class='string_literal'>"mime"</span>)) &amp;&amp;</td></tr>
-<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> (QLatin1String(heif_image_handle_get_metadata_content_type(image_handle, dataIds[i])) == QLatin1String(<span class='string_literal'>"application/rdf+xml"</span>))</td></tr>
-<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> )</td></tr>
-<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='comment'>// Read Xmp chunk.</span></td></tr>
-<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> size_t length = heif_image_handle_get_metadata_size(image_handle, dataIds[i]);</td></tr>
-<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> xmp.resize(length);</td></tr>
-<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> <span class='keyword'>struct</span> heif_error error = heif_image_handle_get_metadata(image_handle,</td></tr>
-<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> dataIds[i],</td></tr>
-<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> xmp.data());</td></tr>
-<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='keyword'>if</span> ((error.code == 0))</td></tr>
-<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 239, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC xmp container found with size:"</span> &lt;&lt; length;</td></tr>
-<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> xmp = QByteArray();</td></tr>
-<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> <span class='keyword'>if</span> (!exif.isEmpty() || !xmp.isEmpty())</td></tr>
-<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> MetaEngine meta;</td></tr>
-<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='keyword'>if</span> (!exif.isEmpty())</td></tr>
-<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> meta.setExif(exif);</td></tr>
-<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>if</span> (!xmp.isEmpty())</td></tr>
-<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> meta.setXmp(xmp);</td></tr>
-<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> m_image-&gt;setMetadata(meta.data());</td></tr>
-<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"><span class='keyword'>bool</span> DImgHEIFLoader::readHEICImageByID(<span class='keyword'>struct</span> heif_context* <span class='keyword'>const</span> heif_context,</td></tr>
-<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> heif_item_id image_id)</td></tr>
-<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">{</td></tr>
-<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='keyword'>struct</span> heif_image* heif_image = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='keyword'>struct</span> heif_image_handle* image_handle = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>struct</span> heif_error error = heif_context_get_image_handle(heif_context,</td></tr>
-<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> image_id,</td></tr>
-<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> &amp;image_handle);</td></tr>
-<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!isHeifSuccess(&amp;error)</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='comment'>// NOTE: An HEIC image without ICC color profile or without metadata still valid.</span></td></tr>
-<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadMetadata</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> readHEICMetadata(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadICCData</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> readHEICColorProfile(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_observer</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> m_observer-&gt;progressInfo(m_image, 0.2F);</td></tr>
-<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadPreview</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> heif_item_id thumbnail_ID = 0;</td></tr>
-<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='keyword'>int</span> nThumbnails = heif_image_handle_get_list_of_thumbnail_IDs(image_handle, &amp;thumbnail_ID, 1);</td></tr>
-<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> <span class='keyword'>if</span> (nThumbnails &gt; 0)</td></tr>
-<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> <span class='keyword'>struct</span> heif_image_handle* thumbnail_handle = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> error = heif_image_handle_get_thumbnail(image_handle, thumbnail_ID, &amp;thumbnail_handle);</td></tr>
-<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> <span class='keyword'>if</span> (!isHeifSuccess(&amp;error))</td></tr>
-<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 314, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC preview found"</span>;</td></tr>
-<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> <span class='keyword'>return</span> readHEICImageByHandle(thumbnail_handle, heif_image);</td></tr>
-<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_loadFlags &amp; LoadImageData</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">readHEICImageByHandle(image_handle, heif_image)</span>;</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgEvent" style="margin-left:16ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Calling 'DImgHEIFLoader::readHEICImageByHandle'</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"><span class='keyword'>bool</span> DImgHEIFLoader::readHEICImageByHandle(<span class='keyword'>struct</span> heif_image_handle* image_handle,</td></tr>
-<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> <span class='keyword'>struct</span> heif_image* heif_image)</td></tr>
-<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line">{</td></tr>
-<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> <span class='comment'>// Copy HEIF image into data structures.</span></td></tr>
-<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> <span class='keyword'>struct</span> heif_error error;</td></tr>
-<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> <span class='keyword'>struct</span> heif_decoding_options* <span class='keyword'>const</span> decode_options = heif_decoding_options_alloc();</td></tr>
-<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> decode_options-&gt;ignore_transformations = 1;</td></tr>
-<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> m_hasAlpha = heif_image_handle_has_alpha_channel(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> heif_chroma chroma = <span class="mrange">m_hasAlpha</span> ? heif_chroma_interleaved_RGBA</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgEvent" style="margin-left:58ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgControl" style="margin-left:58ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>'?' condition is false</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> : heif_chroma_interleaved_RGB;</td></tr>
-<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class='comment'>// Trace to check image size properties before decoding, as these values can be different.</span></td></tr>
-<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 341, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC image size: ("</span></td></tr>
-<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> &lt;&lt; heif_image_handle_get_width(image_handle)</td></tr>
-<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> &lt;&lt; <span class='string_literal'>"x"</span></td></tr>
-<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> &lt;&lt; heif_image_handle_get_height(image_handle)</td></tr>
-<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> &lt;&lt; <span class='string_literal'>")"</span>;</td></tr>
-<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> error = heif_decode_image(image_handle,</td></tr>
-<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> &amp;heif_image,</td></tr>
-<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> heif_colorspace_RGB,</td></tr>
-<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> chroma,</td></tr>
-<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> decode_options);</td></tr>
-<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!isHeifSuccess(&amp;error)</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_observer</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> m_observer-&gt;progressInfo(m_image, 0.3F);</td></tr>
-<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> heif_decoding_options_free(decode_options);</td></tr>
-<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> heif_colorspace colorSpace = heif_image_get_colorspace(heif_image);</td></tr>
-<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> <span class='keyword'>int</span> colorDepth = heif_image_get_bits_per_pixel(heif_image, heif_channel_interleaved);</td></tr>
-<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> imageWidth() = heif_image_get_width(heif_image, heif_channel_interleaved);</td></tr>
-<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> imageHeight() = heif_image_get_height(heif_image, heif_channel_interleaved);</td></tr>
-<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 371, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"Decoded HEIC image properties: size("</span></td></tr>
-<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> &lt;&lt; imageWidth() &lt;&lt; <span class='string_literal'>"x"</span> &lt;&lt; imageHeight()</td></tr>
-<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> &lt;&lt; <span class='string_literal'>"), Alpha:"</span> &lt;&lt; m_hasAlpha</td></tr>
-<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> &lt;&lt; <span class='string_literal'>", Color depth :"</span> &lt;&lt; colorDepth;</td></tr>
-<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> <span class='keyword'>if</span> (!QSize(imageWidth(), imageHeight()).isValid())</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> heif_image_release(heif_image);</td></tr>
-<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> <span class='keyword'>int</span> stride = 0;</td></tr>
-<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> uint8_t* <span class='keyword'>const</span> ptr = heif_image_get_plane(heif_image, heif_channel_interleaved, &amp;stride);</td></tr>
-<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 386, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC data container:"</span> &lt;&lt; ptr;</td></tr>
-<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 387, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"HEIC bytes per line:"</span> &lt;&lt; stride;</td></tr>
-<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!ptr</span> || <span class="mrange">stride &lt;= 0</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Assuming 'ptr' is non-null</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>Assuming 'stride' is &gt; 0</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 391, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"HEIC data pixels information not valid!"</span>;</td></tr>
-<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> heif_image_release(heif_image);</td></tr>
-<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> uchar* data = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">colorDepth == 24</span> || <span class='comment'>// RGB</span></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Assuming 'colorDepth' is equal to 24</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> colorDepth == 32) <span class='comment'>// RGBA</span></td></tr>
-<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 402, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"Color bytes depth: 8"</span>;</td></tr>
-<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> m_sixteenBit = <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (colorDepth == 48 || <span class='comment'>// RGB</span></td></tr>
-<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> colorDepth == 64) <span class='comment'>// RGBA</span></td></tr>
-<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> <span class='macro'>qDebug<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 408, __PRETTY_FUNCTION__).debug</span></span>() &lt;&lt; <span class='string_literal'>"Color bytes depth: 16"</span>;</td></tr>
-<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> m_sixteenBit = <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> <span class='macro'>qWarning<span class='expansion'>QMessageLogger("/mnt/devel/GIT/6.x/core/dplugins/dimg/heif/dimgheifloader_load.cpp"<br>, 413, __PRETTY_FUNCTION__).warning</span></span>() &lt;&lt; <span class='string_literal'>"Color bits depth: "</span> &lt;&lt; colorDepth &lt;&lt; <span class='string_literal'>": not supported!"</span>;</td></tr>
-<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> heif_image_release(heif_image);</td></tr>
-<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> <span class='keyword'>if</span> (m_sixteenBit)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> data = new_failureTolerant(imageWidth(), imageHeight(), 8); <span class='comment'>// 16 bits/color/pixel</span></td></tr>
-<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> data = new_failureTolerant(imageWidth(), imageHeight(), 4); <span class='comment'>// 8 bits/color/pixel</span></td></tr>
-<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">m_observer</span>)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> m_observer-&gt;progressInfo(m_image, 0.4F);</td></tr>
-<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> uchar* dst = data;</td></tr>
-<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class="mrange"><span class='keyword'>unsigned</span> <span class='keyword'>short</span>* dst16</span> = <span class='keyword'>nullptr</span>;</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>'dst16' initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path41" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> uchar* src = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>short</span>* src16 = <span class='keyword'>nullptr</span>;</td></tr>
-<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> <span class='keyword'>unsigned</span> <span class='keyword'>int</span> checkPoint = 0;</td></tr>
-<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>unsigned</span> <span class='keyword'>int</span> y = 0 ; <span class="mrange">y &lt; imageHeight()</span> ; ++y)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path41" class="msg msgEvent" style="margin-left:31ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path42" title="Next event (42)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path42" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">42</div></td><td><div class="PathNav"><a href="#Path41" title="Previous event (41)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path43" title="Next event (43)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> src = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>unsigned</span> <span class='keyword'>char</span>*&gt;(ptr + (y * stride));</td></tr>
-<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> src16 = <span class='keyword'>reinterpret_cast</span>&lt;<span class='keyword'>unsigned</span> <span class='keyword'>short</span>*&gt;(src);</td></tr>
-<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>unsigned</span> <span class='keyword'>int</span> x = 0 ; <span class="mrange">x &lt; imageWidth()</span> ; ++x)</td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path43" class="msg msgEvent" style="margin-left:35ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">43</div></td><td><div class="PathNav"><a href="#Path42" title="Previous event (42)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path44" title="Next event (44)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path44" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">44</div></td><td><div class="PathNav"><a href="#Path43" title="Previous event (43)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path45" title="Next event (45)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!m_sixteenBit</span>) <span class='comment'>// 8 bits image.</span></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path45" class="msg msgEvent" style="margin-left:17ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">45</div></td><td><div class="PathNav"><a href="#Path44" title="Previous event (44)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path46" title="Next event (46)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr><td class="num"></td><td class="line"><div id="Path46" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">46</div></td><td><div class="PathNav"><a href="#Path45" title="Previous event (45)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#EndPath" title="Next event (47)">&#x2192;</a></div></td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> <span class='comment'>// Blue</span></td></tr>
-<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> dst[0] = src[2];</td></tr>
-<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> <span class='comment'>// Green</span></td></tr>
-<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> dst[1] = src[1];</td></tr>
-<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> <span class='comment'>// Red</span></td></tr>
-<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> dst[2] = src[3];</td></tr>
-<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> <span class='comment'>// Alpha</span></td></tr>
-<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line"> <span class='keyword'>if</span> (m_hasAlpha)</td></tr>
-<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> dst[3] = src[3];</td></tr>
-<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> src += 4;</td></tr>
-<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> dst[3] = 0xFF;</td></tr>
-<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> src += 3;</td></tr>
-<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> dst += 4;</td></tr>
-<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// 16 bits image.</span></td></tr>
-<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> <span class='comment'>// Blue</span></td></tr>
-<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class="mrange">dst16</span>[0] = src16[2];</td></tr>
-<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:26ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">47</div></td><td><div class="PathNav"><a href="#Path46" title="Previous event (46)">&#x2190;</a></div></td></td><td>Array access (from variable 'dst16') results in a null pointer dereference</td></tr></table></div></td></tr>
-<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> <span class='comment'>// Green</span></td></tr>
-<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> dst16[1] = src16[1];</td></tr>
-<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> <span class='comment'>// Red</span></td></tr>
-<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> dst16[2] = src16[0];</td></tr>
-<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> <span class='comment'>// Alpha</span></td></tr>
-<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> <span class='keyword'>if</span> (m_hasAlpha)</td></tr>
-<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> dst16[3] = src16[3];</td></tr>
-<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> src16 += 4;</td></tr>
-<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> <span class='keyword'>else</span></td></tr>
-<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> dst16[3] = 0xFFFF;</td></tr>
-<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> src16 += 3;</td></tr>
-<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> dst16 += 4;</td></tr>
-<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> <span class='keyword'>if</span> (m_observer &amp;&amp; y &gt;= checkPoint)</td></tr>
-<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> checkPoint += granularity(m_observer, y, 0.8F);</td></tr>
-<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> <span class='keyword'>if</span> (!m_observer-&gt;continueQuery(m_image))</td></tr>
-<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line"> heif_image_release(heif_image);</td></tr>
-<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> loadingFailed();</td></tr>
-<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
-<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line"> m_observer-&gt;progressInfo(m_image, 0.4 + (0.8 * (((<span class='keyword'>float</span>)y) / ((<span class='keyword'>float</span>)imageHeight()))));</td></tr>
-<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> imageData() = data;</td></tr>
-<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"format"</span>), QLatin1String(<span class='string_literal'>"HEIF"</span>));</td></tr>
-<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalColorModel"</span>), colorSpace);</td></tr>
-<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalBitDepth"</span>), m_sixteenBit ? 16 : 8);</td></tr>
-<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> imageSetAttribute(QLatin1String(<span class='string_literal'>"originalSize"</span>), QSize(imageWidth(), imageHeight()));</td></tr>
-<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> <span class='keyword'>if</span> (m_observer)</td></tr>
-<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> {</td></tr>
-<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> m_observer-&gt;progressInfo(m_image, 0.9F);</td></tr>
-<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> }</td></tr>
-<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> heif_image_release(heif_image);</td></tr>
-<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> heif_image_handle_release(image_handle);</td></tr>
-<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
-<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line">}</td></tr>
-<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> </td></tr>
-<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
-</table></body></html>
diff --git a/static/reports/clang/master/report-cfa9bf.html b/static/reports/clang/master/report-efaba4.html
similarity index 99%
rename from static/reports/clang/master/report-cfa9bf.html
rename to static/reports/clang/master/report-efaba4.html
index 322d1acba..683ee7a4e 100644
--- a/static/reports/clang/master/report-cfa9bf.html
+++ b/static/reports/clang/master/report-efaba4.html
@@ -1,611 +1,611 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Use of memory after it is freed -->
<!-- BUGTYPE Use-after-free -->
<!-- BUGCATEGORY Memory error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp -->
<!-- FILENAME atkinspagelayouttree.cpp -->
<!-- FUNCTIONNAME operator= -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT a60a48c19c9da718cb679de16dfc3815 -->
<!-- BUGLINE 58 -->
<!-- BUGCOLUMN 30 -->
<!-- BUGPATHLENGTH 3 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 58, column 30</a><br />Use of memory after it is freed</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name atkinspagelayouttree.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtPrintSupport -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_PrintCreator_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_PRINTSUPPORT_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/printcreator/Generic_PrintCreator_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtConcurrent -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/printcreator -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/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name atkinspagelayouttree.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/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtPrintSupport -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KI18n -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/include/KF5/KXmlGui -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/KService -D Generic_PrintCreator_Plugin_EXPORTS -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -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_PRINTSUPPORT_LIB -D QT_USE_QSTRINGBUILDER -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/6.x/build.scan/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/printcreator/Generic_PrintCreator_Plugin_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.x/build.scan/core/app/utils -I /mnt/devel/GIT/6.x/build.scan/core/app -I /mnt/devel/GIT/6.x/core/app -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/QtConcurrent -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/dplugins/generic/tools/printcreator -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/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools/atkinspagelayouttree.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"55": 1, "56": 1, "57": 1, "58": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2007-02-13</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : Layouting photos on a page</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2007-2009 by Marcel Wiesweg &lt;marcel dot wiesweg at gmx dot de&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* either version 2, or (at your option) any later version.</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"><span class='directive'>#include "atkinspagelayouttree.h"</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='directive'>#include &lt;cmath&gt;</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"><span class='directive'>#include &lt;QList&gt;</span></td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"><span class='directive'>#include "atkinspagelayoutnode.h"</span></td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"><span class='keyword'>namespace</span> DigikamGenericPrintCreatorPlugin</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line">AtkinsPageLayoutTree::AtkinsPageLayoutTree(<span class='keyword'>double</span> aspectRatioPage,</td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"> <span class='keyword'>double</span> absoluteAreaPage)</td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> : m_root(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"> m_count(0),</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> m_aspectRatioPage(aspectRatioPage),</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> m_absoluteAreaPage(absoluteAreaPage)</td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line">AtkinsPageLayoutTree::AtkinsPageLayoutTree(<span class='keyword'>const</span> AtkinsPageLayoutTree&amp; other)</td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> (*<span class='keyword'>this</span>) = other;</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class="mrange">AtkinsPageLayoutTree&amp; AtkinsPageLayoutTree::<span class='keyword'>operator</span>=(<span class='keyword'>const</span> AtkinsPageLayoutTree&amp; other)</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:45ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming other == *this</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"><span class="mrange"><span class="mrange">{</td></tr></span></span>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> <span class="mrange"><span class="mrange"><span class="mrange"><span class='keyword'>delete</span> m_root</span>;</td></tr></span></span>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Memory is released</td><td><div class="PathNav"><a href="#EndPath" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> <span class="mrange"><span class="mrange">m_root = <span class='keyword'>new</span> AtkinsPageLayoutNode(<span class="mrange">*(other.m_root)</span>);</td></tr></span></span>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Use of memory after it is freed</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> <span class="mrange"><span class="mrange">m_count = other.m_count;</td></tr></span></span>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class="mrange"><span class="mrange">m_aspectRatioPage = other.m_aspectRatioPage;</td></tr></span></span>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> <span class="mrange"><span class="mrange">m_absoluteAreaPage = other.m_absoluteAreaPage;</td></tr></span></span>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> <span class="mrange"><span class="mrange"><span class='keyword'>return</span> *<span class='keyword'>this</span>;</td></tr></span></span>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"><span class="mrange"><span class="mrange">}</td></tr></span></span>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line">AtkinsPageLayoutTree::~AtkinsPageLayoutTree()</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> <span class='keyword'>delete</span> m_root;</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"><span class='keyword'>int</span> AtkinsPageLayoutTree::addImage(<span class='keyword'>double</span> aspectRatio,</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> <span class='keyword'>double</span> relativeArea)</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> <span class='keyword'>int</span> index = m_count;</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> <span class='keyword'>if</span> (!m_root)</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> m_root = <span class='keyword'>new</span> AtkinsPageLayoutNode(aspectRatio,</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> relativeArea,</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> index);</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> m_count++;</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> <span class='keyword'>return</span> index;</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='comment'>// Section 2.1</span></td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> AtkinsPageLayoutNode* bestTree = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>double</span> highScore = 0;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; m_count ; ++i)</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> horizontal = 0 ; horizontal &lt; 2 ; ++horizontal)</td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> <span class='comment'>// create temporary tree</span></td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> AtkinsPageLayoutNode* candidateTree = <span class='keyword'>new</span> AtkinsPageLayoutNode(*m_root);</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='comment'>// select the subtree which will be replace by a new internal node</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> candidateSubtree = candidateTree-&gt;nodeForIndex(i);</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='comment'>// find parent node</span></td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> parentNode = candidateTree-&gt;parentOf(candidateSubtree);</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> <span class='comment'>// create new terminal node</span></td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> newTerminalNode = <span class='keyword'>new</span> AtkinsPageLayoutNode(aspectRatio,</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> relativeArea,</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> index);</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> <span class='comment'>// create new internal node</span></td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> newInternalNode = <span class='keyword'>new</span> AtkinsPageLayoutNode(candidateSubtree,</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> newTerminalNode,</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> horizontal,</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> index+1);</td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='comment'>// replace in tree</span></td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='keyword'>if</span> (parentNode)</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='comment'>// replace in tree</span></td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> parentNode-&gt;takeAndSetChild(candidateSubtree, newInternalNode);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='comment'>// candidateTree is candidateSubtree is root</span></td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> candidateTree = newInternalNode;</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='comment'>// recompute sizes</span></td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> candidateTree-&gt;computeRelativeSizes();</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> <span class='keyword'>double</span> candidateScore = score(candidateTree, m_count+2);</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> <span class='keyword'>if</span> (candidateScore &gt; highScore)</td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> highScore = candidateScore;</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>delete</span> bestTree;</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> bestTree = candidateTree;</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>delete</span> candidateTree;</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='keyword'>delete</span> m_root;</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> m_root = bestTree;</td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"> <span class='keyword'>if</span> (m_root)</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> m_root-&gt;computeDivisions();</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> m_count += 2;</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='keyword'>return</span> index;</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"><span class='comment'>// Section 2.2.1</span></td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"><span class='keyword'>double</span> AtkinsPageLayoutTree::score(AtkinsPageLayoutNode* <span class='keyword'>const</span> root,</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>int</span> nodeCount)</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='keyword'>if</span> (!root)</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> <span class='keyword'>return</span> 0;</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='keyword'>double</span> areaSum = 0;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; nodeCount ; ++i)</td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> node = root-&gt;nodeForIndex(i);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>if</span> (node-&gt;type() == AtkinsPageLayoutNode::TerminalNode)</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> areaSum += node-&gt;relativeArea();</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> <span class='keyword'>double</span> minRatioPage = root-&gt;aspectRatio() &lt; m_aspectRatioPage ? root-&gt;aspectRatio()</td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> : m_aspectRatioPage;</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> <span class='keyword'>double</span> maxRatioPage = root-&gt;aspectRatio() &gt; m_aspectRatioPage ? root-&gt;aspectRatio()</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> : m_aspectRatioPage;</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> <span class='keyword'>return</span> G() * (areaSum / root-&gt;relativeArea()) * (minRatioPage / maxRatioPage);</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"><span class='comment'>// Section 2.2.2</span></td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"><span class='keyword'>double</span> AtkinsPageLayoutTree::G() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>return</span> 0.95 * 0.95;</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"><span class='comment'>// Section 2.2.2</span></td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"><span class='keyword'>double</span> AtkinsPageLayoutTree::absoluteArea(AtkinsPageLayoutNode* <span class='keyword'>const</span> node)</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> <span class='comment'>// min(a_pbb, a_page), max(a_pbb, a_page)</span></td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> <span class='keyword'>double</span> minRatioPage = m_root-&gt;aspectRatio() &lt; m_aspectRatioPage ? m_root-&gt;aspectRatio()</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> : m_aspectRatioPage;</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> <span class='keyword'>double</span> maxRatioPage = m_root-&gt;aspectRatio() &gt; m_aspectRatioPage ? m_root-&gt;aspectRatio()</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> : m_aspectRatioPage;</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> <span class='comment'>// A_pbb</span></td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='keyword'>double</span> absoluteAreaRoot = m_absoluteAreaPage * minRatioPage / maxRatioPage;</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> <span class='keyword'>if</span> (node == m_root)</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> <span class='keyword'>return</span> absoluteAreaRoot;</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> <span class='comment'>// A_i</span></td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>return</span> G() * node-&gt;relativeArea() / m_root-&gt;relativeArea() * absoluteAreaRoot;</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line">QRectF AtkinsPageLayoutTree::drawingArea(<span class='keyword'>int</span> index, <span class='keyword'>const</span> QRectF&amp; absoluteRectPage)</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> node = m_root-&gt;nodeForIndex(index);</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> <span class='keyword'>if</span> (!node)</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>return</span> QRectF();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='comment'>// find out the "line of ancestry" of the node</span></td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> QList&lt;AtkinsPageLayoutNode*&gt; treePath;</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> AtkinsPageLayoutNode* parent = node;</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='keyword'>while</span> (parent)</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> treePath.prepend(parent);</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> parent = m_root-&gt;parentOf(parent);</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='comment'>// find out the rect of the page bounding box (the rect of the root node in the page rect)</span></td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> QRectF absoluteRect = rectInRect(absoluteRectPage,</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> m_root-&gt;aspectRatio(),</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> absoluteArea(m_root));</td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> <span class='comment'>// go along the line of ancestry and narrow down the bounding rectangle,</span></td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='comment'>// as described in section 2.2.2</span></td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0 ; i &lt; treePath.count() - 1 ; ++i)</td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> parent = treePath[i];</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> AtkinsPageLayoutNode* <span class='keyword'>const</span> child = treePath[i+1]; <span class='comment'>// only iterating to count-1</span></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> <span class='keyword'>if</span> (parent-&gt;type() == AtkinsPageLayoutNode::VerticalDivision) <span class='comment'>// side by side</span></td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>double</span> leftWidth = absoluteRect.width() * parent-&gt;division();</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>if</span> (child == parent-&gt;leftChild())</td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> absoluteRect.setWidth(leftWidth);</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// right child</span></td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> <span class='keyword'>double</span> rightWidth = absoluteRect.width() - leftWidth;</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> absoluteRect.setWidth(rightWidth);</td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> absoluteRect.translate(leftWidth, 0);</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// horizontal division: one on top of the other</span></td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> <span class='comment'>// left child is topmost</span></td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='keyword'>double</span> upperHeight = absoluteRect.height() * parent-&gt;division();</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> <span class='keyword'>if</span> (child == parent-&gt;leftChild())</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> absoluteRect.setHeight(upperHeight);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>else</span> <span class='comment'>// right child</span></td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> <span class='keyword'>double</span> lowerHeight = absoluteRect.height() - upperHeight;</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> absoluteRect.setHeight(lowerHeight);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> absoluteRect.translate(0, upperHeight);</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> <span class='keyword'>return</span> rectInRect(absoluteRect, node-&gt;aspectRatio(), absoluteArea(node));</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">QRectF AtkinsPageLayoutTree::rectInRect(<span class='keyword'>const</span> QRectF &amp;rect,</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> <span class='keyword'>double</span> aspectRatio,</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> <span class='keyword'>double</span> absoluteArea)</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>double</span> width = std::sqrt(absoluteArea / aspectRatio);</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> <span class='keyword'>double</span> height = std::sqrt(absoluteArea * aspectRatio);</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> <span class='keyword'>double</span> x = rect.x() + (rect.width() - width) / 2;</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='keyword'>double</span> y = rect.y() + (rect.height() - height) / 2;</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='keyword'>return</span> QRectF(x, y, width, height);</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line">} <span class='comment'>// Namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-fc062c.html b/static/reports/clang/master/report-f5f63c.html
similarity index 99%
rename from static/reports/clang/master/report-fc062c.html
rename to static/reports/clang/master/report-f5f63c.html
index 6dd27d8bf..64bdd9a8b 100644
--- a/static/reports/clang/master/report-fc062c.html
+++ b/static/reports/clang/master/report-f5f63c.html
@@ -1,918 +1,918 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Called C++ object pointer is null -->
<!-- BUGTYPE Called C++ object pointer is null -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp -->
<!-- FILENAME undomanager.cpp -->
<!-- FUNCTIONNAME addAction -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT e957792274634afe72bb17988983cb76 -->
<!-- BUGLINE 109 -->
<!-- BUGCOLUMN 9 -->
<!-- BUGPATHLENGTH 8 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 109, column 9</a><br />Called C++ object pointer is null</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name undomanager.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 USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -I /mnt/devel/GIT/6.x/build.scan/core/utilities/imageeditor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor -I /mnt/devel/GIT/6.x/build.scan/core/utilities/imageeditor/imageeditor_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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/QtPrintSupport -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtSql -I /usr/lib64/qt5/include/QtNetwork -I /usr/include/KF5/KI18n -I /usr/include/KF5 -I /usr/include/KF5/KXmlGui -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5/KConfigWidgets -I /usr/include/KF5/KCodecs -I /usr/include/KF5/KWidgetsAddons -I /usr/include/KF5/KConfigGui -I /usr/include/KF5/KAuth -I /usr/include/KF5/KCoreAddons -I /usr/lib64/qt5/include/QtDBus -I /usr/include/KF5/KService -I /usr/include/KF5/Solid -I /usr/include/KF5/KWindowSystem -I /usr/include/KF5/KIOWidgets -I /usr/include/KF5/KIOCore -I /usr/lib64/qt5/include/QtConcurrent -I /usr/include/KF5/KJobWidgets -I /usr/include/KF5/KCompletion -I /usr/include/gphoto2 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/utilities/imageeditor -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name undomanager.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 USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -I /mnt/devel/GIT/6.x/build.scan/core/utilities/imageeditor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor -I /mnt/devel/GIT/6.x/build.scan/core/utilities/imageeditor/imageeditor_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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/QtPrintSupport -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtSql -I /usr/lib64/qt5/include/QtNetwork -I /usr/include/KF5/KI18n -I /usr/include/KF5 -I /usr/include/KF5/KXmlGui -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5/KConfigWidgets -I /usr/include/KF5/KCodecs -I /usr/include/KF5/KWidgetsAddons -I /usr/include/KF5/KConfigGui -I /usr/include/KF5/KAuth -I /usr/include/KF5/KCoreAddons -I /usr/lib64/qt5/include/QtDBus -I /usr/include/KF5/KService -I /usr/include/KF5/Solid -I /usr/include/KF5/KWindowSystem -I /usr/include/KF5/KIOWidgets -I /usr/include/KF5/KIOCore -I /usr/lib64/qt5/include/QtConcurrent -I /usr/include/KF5/KJobWidgets -I /usr/include/KF5/KCompletion -I /usr/include/gphoto2 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/utilities/imageeditor -ferror-limit 19 -fmessage-length 0 -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/utilities/imageeditor/core/undomanager.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"81": 1, "82": 1, "83": 1, "89": 1, "92": 1, "94": 1, "97": 1, "100": 1, "102": 1, "105": 1, "107": 1, "108": 1, "109": 1, "352": 1, "353": 1, "354": 1, "482": 1, "483": 1, "484": 1, "486": 1, "501": 1, "502": 1, "503": 1, "540": 1, "541": 1, "542": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-02-06</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : an image editor actions undo/redo manager</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2006 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Copyright (C) 2005-2006 Joern Ahrens &lt;joern dot ahrens at kdemail dot net&gt;</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"><span class='directive'>#include "undomanager.h"</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"><span class='directive'>#include &lt;typeinfo&gt;</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"><span class='directive'>#include &lt;climits&gt;</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// Qt includes</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='directive'>#include &lt;QList&gt;</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='directive'>#include "editorcore.h"</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"><span class='directive'>#include "undoaction.h"</span></td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include "undocache.h"</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> UndoManager::Private</td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> <span class='keyword'>explicit</span> Private()</td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"> : origin(0),</td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"> undoCache(<span class='keyword'>nullptr</span>),</td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> core(<span class='keyword'>nullptr</span>)</td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"> QList&lt;UndoAction*&gt; undoActions;</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line"> QList&lt;UndoAction*&gt; redoActions;</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> <span class='keyword'>int</span> origin;</td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line"> UndoCache* undoCache;</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> EditorCore* core;</td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line">UndoManager::UndoManager(EditorCore* <span class='keyword'>const</span> core)</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> : d(<span class='keyword'>new</span> Private)</td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> d-&gt;core = core;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> d-&gt;undoCache = <span class='keyword'>new</span> UndoCache;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line">UndoManager::~UndoManager()</td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> clear(<span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>delete</span> d-&gt;undoCache;</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>delete</span> d;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"><span class='keyword'>void</span> UndoManager::addAction(UndoAction* <span class='keyword'>const</span> action)</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">!action</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Assuming 'action' is non-null</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='comment'>// All redo actions are invalid now</span></td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> clearRedoActions();</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> <span class='comment'>// If the _last_ action was irreversible, we need to snapshot it</span></td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line"> UndoAction* <span class='keyword'>const</span> lastAction = <span class="mrange">d-&gt;undoActions.isEmpty()</span> ? 0 : d-&gt;undoActions.last();</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:50ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:50ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>'?' condition is true</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"> <span class="mrange">d-&gt;undoActions &lt;&lt; action</span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Value assigned to 'action'</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> <span class='comment'>// action has already read the "history before step" from EditorCore in its constructor</span></td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line"> UndoActionIrreversible* <span class='keyword'>const</span> irreversible = <span class='keyword'>dynamic_cast</span>&lt;UndoActionIrreversible*&gt;(action);</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='comment'>// we always make an initial snapshot to be able to do a flying rollback in one step</span></td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">irreversible</span> || !lastAction || isAtOrigin())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming 'irreversible' is null</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> makeSnapshot(d-&gt;undoActions.size() - 1);</td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>if</span> (isAtOrigin())</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#EndPath" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"> QVariant originDataBeforeStep = d-&gt;core-&gt;getImg()-&gt;fileOriginData();</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> DImageHistory originHistoryBeforeStep = d-&gt;core-&gt;getResolvedInitialHistory();</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class="mrange">action</span>-&gt;setFileOriginData(originDataBeforeStep, originHistoryBeforeStep);</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Called C++ object pointer is null</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"> <span class='comment'>// if origin is at one of the redo action that are now invalid,</span></td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='comment'>// it is no longer reachable</span></td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> <span class='keyword'>if</span> (d-&gt;origin &lt; 0)</td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> d-&gt;origin = <span class='macro'>INT_MAX<span class='expansion'>2147483647</span></span>;</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"> d-&gt;origin++;</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"><span class='keyword'>void</span> UndoManager::undo()</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> <span class='keyword'>if</span> (d-&gt;undoActions.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"> undoStep(<span class='keyword'>true</span>, <span class='keyword'>true</span>, <span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> d-&gt;core-&gt;setModified();</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"><span class='keyword'>void</span> UndoManager::redo()</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>if</span> (d-&gt;redoActions.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> redoStep(<span class='keyword'>true</span>, <span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"> d-&gt;core-&gt;setModified();</td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"><span class='keyword'>void</span> UndoManager::rollbackToOrigin()</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"> <span class='keyword'>if</span> (d-&gt;undoActions.isEmpty() || isAtOrigin())</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> <span class='keyword'>if</span> (d-&gt;origin &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> <span class='keyword'>if</span> (d-&gt;undoActions.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"> undo();</td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"> undoStep(<span class='keyword'>true</span>, <span class='keyword'>false</span>, <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line"> <span class='keyword'>while</span> (d-&gt;origin &gt; 1)</td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> undoStep(<span class='keyword'>false</span>, <span class='keyword'>false</span>, <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> undoStep(<span class='keyword'>false</span>, <span class='keyword'>true</span>, <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>if</span> (d-&gt;redoActions.size() == 1)</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> redo();</td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> <span class='keyword'>while</span> (d-&gt;origin &lt; -1)</td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line"> redoStep(<span class='keyword'>false</span>, <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line"> redoStep(<span class='keyword'>true</span>, <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> d-&gt;core-&gt;setModified();</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"><span class='keyword'>void</span> UndoManager::undoStep(<span class='keyword'>bool</span> saveRedo, <span class='keyword'>bool</span> execute, <span class='keyword'>bool</span> flyingRollback)</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> UndoAction* <span class='keyword'>const</span> action = d-&gt;undoActions.last();</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> UndoMetadataContainer dataBeforeStep = action-&gt;getMetadata();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> UndoMetadataContainer dataAfterStep = UndoMetadataContainer::fromImage(*d-&gt;core-&gt;getImg());</td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> UndoActionIrreversible* <span class='keyword'>const</span> irreversible = <span class='keyword'>dynamic_cast</span>&lt;UndoActionIrreversible*&gt;(action);</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> UndoActionReversible* <span class='keyword'>const</span> reversible = <span class='keyword'>dynamic_cast</span>&lt;UndoActionReversible*&gt;(action);</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> QVariant originDataAfterStep = d-&gt;core-&gt;getImg()-&gt;fileOriginData();</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> QVariant originDataBeforeStep; <span class='comment'>// only needed if isAtOrigin()</span></td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> DImageHistory originHistoryAfterStep = d-&gt;core-&gt;getResolvedInitialHistory();</td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> DImageHistory originHistoryBeforeStep;</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>int</span> lastOrigin = 0;</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> <span class='keyword'>if</span> (isAtOrigin())</td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='comment'>// undoing from an origin: need to switch to previous origin?</span></td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> <span class='keyword'>for</span> (lastOrigin = d-&gt;undoActions.size() - 1 ; lastOrigin &gt;= 0 ; --lastOrigin)</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> <span class='keyword'>if</span> (d-&gt;undoActions.at(lastOrigin)-&gt;hasFileOriginData())</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> originDataBeforeStep = d-&gt;undoActions.at(lastOrigin)-&gt;fileOriginData();</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> originHistoryBeforeStep = d-&gt;undoActions.at(lastOrigin)-&gt;fileOriginResolvedHistory();</td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> <span class='keyword'>if</span> (saveRedo)</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> <span class='keyword'>bool</span> needSnapshot = <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>if</span> (d-&gt;redoActions.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='comment'>// Undoing from the tip of the list:</span></td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> <span class='comment'>// Save the "last", current state for the redo operation</span></td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> needSnapshot = irreversible;</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='comment'>// Undoing an irreversible with next redo reversible:</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> <span class='comment'>// Here, no snapshot was made in addAction, but we need it now</span></td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> needSnapshot = <span class='keyword'>dynamic_cast</span>&lt;UndoActionReversible*&gt;(d-&gt;redoActions.last());</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> <span class='keyword'>if</span> (needSnapshot)</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='comment'>//d-&gt;undoCache-&gt;erase(d-&gt;undoActions.size() + 1);</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> makeSnapshot(d-&gt;undoActions.size());</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> <span class='keyword'>if</span> (execute)</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> <span class='comment'>// in case of flyingRollback, the data in core is not in sync</span></td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>if</span> (irreversible || flyingRollback)</td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> <span class='comment'>// undo the action</span></td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> restoreSnapshot(d-&gt;undoActions.size() - 1, dataBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (reversible) <span class='comment'>// checking pointer just to check for null pointer in case of a bug</span></td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> reversible-&gt;getReverseFilter().apply(*d-&gt;core-&gt;getImg());</td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> d-&gt;core-&gt;imageUndoChanged(dataBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line"> <span class='comment'>// if we do not copy the data (fast roll-back), we at least set the history for subsequent steps</span></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line"> d-&gt;core-&gt;imageUndoChanged(dataBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line"> <span class='comment'>// Record history and origin for redo</span></td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> action-&gt;setMetadata(dataAfterStep);</td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>if</span> (isAtOrigin())</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line"> action-&gt;setFileOriginData(originDataAfterStep, originHistoryAfterStep);</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> action-&gt;setFileOriginData(QVariant(), DImageHistory());</td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> d-&gt;undoActions.removeLast();</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> d-&gt;redoActions &lt;&lt; action;</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>if</span> (!originDataBeforeStep.isNull())</td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> d-&gt;origin = d-&gt;undoActions.size() - lastOrigin;</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> d-&gt;core-&gt;setFileOriginData(originDataBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> d-&gt;core-&gt;setResolvedInitialHistory(originHistoryBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"> d-&gt;origin--;</td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"><span class='keyword'>void</span> UndoManager::redoStep(<span class='keyword'>bool</span> execute, <span class='keyword'>bool</span> flyingRollback)</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> UndoAction* <span class='keyword'>const</span> action = d-&gt;redoActions.last();</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> UndoMetadataContainer dataBeforeStep = UndoMetadataContainer::fromImage(*d-&gt;core-&gt;getImg());</td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> UndoMetadataContainer dataAfterStep = action-&gt;getMetadata();</td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> QVariant originDataBeforeStep = d-&gt;core-&gt;getImg()-&gt;fileOriginData();</td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> QVariant originDataAfterStep = action-&gt;fileOriginData();</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> DImageHistory originHistoryBeforeStep = d-&gt;core-&gt;getResolvedInitialHistory();</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> DImageHistory originHistoryAfterStep = action-&gt;fileOriginResolvedHistory();</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> UndoActionIrreversible* <span class='keyword'>const</span> irreversible = <span class='keyword'>dynamic_cast</span>&lt;UndoActionIrreversible*&gt;(action);</td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> UndoActionReversible* <span class='keyword'>const</span> reversible = <span class='keyword'>dynamic_cast</span>&lt;UndoActionReversible*&gt;(action);</td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> <span class='keyword'>if</span> (execute)</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> <span class='keyword'>if</span> (irreversible || flyingRollback)</td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> restoreSnapshot(d-&gt;undoActions.size() + 1, dataAfterStep);</td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (reversible) <span class='comment'>// checking pointer just to check for null pointer in case of a bug</span></td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> reversible-&gt;getFilter().apply(*d-&gt;core-&gt;getImg());</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> d-&gt;core-&gt;imageUndoChanged(dataAfterStep);</td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> <span class='comment'>// if we do not copy the data (fast roll-back), we at least set the history for subsequent steps</span></td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> d-&gt;core-&gt;imageUndoChanged(dataAfterStep);</td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> action-&gt;setMetadata(dataBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> <span class='keyword'>if</span> (isAtOrigin())</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> action-&gt;setFileOriginData(originDataBeforeStep, originHistoryBeforeStep);</td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> action-&gt;setFileOriginData(QVariant(), DImageHistory());</td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> d-&gt;redoActions.removeLast();</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> d-&gt;undoActions &lt;&lt; action;</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> <span class='keyword'>if</span> (!originDataAfterStep.isNull())</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> d-&gt;origin = 0;</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> d-&gt;core-&gt;setFileOriginData(originDataAfterStep);</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> d-&gt;core-&gt;setResolvedInitialHistory(originHistoryAfterStep);</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> d-&gt;origin++;</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"><span class='keyword'>void</span> UndoManager::makeSnapshot(<span class='keyword'>int</span> index)</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> d-&gt;undoCache-&gt;putData(index, *d-&gt;core-&gt;getImg());</td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"><span class='keyword'>void</span> UndoManager::restoreSnapshot(<span class='keyword'>int</span> index, <span class='keyword'>const</span> UndoMetadataContainer&amp; c)</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> DImg img = d-&gt;undoCache-&gt;getData(index);</td></tr>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> <span class='keyword'>if</span> (!img.isNull())</td></tr>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> d-&gt;core-&gt;setUndoImg(c, img);</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"><span class='keyword'>void</span> UndoManager::getSnapshot(<span class='keyword'>int</span> index, DImg* <span class='keyword'>const</span> img) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> DImg data = d-&gt;undoCache-&gt;getData(index);</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> <span class='comment'>// Pass ownership of buffer. If data is null, img will be null</span></td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> img-&gt;putImageData(data.width(), data.height(), data.sixteenBit(), data.hasAlpha(), data.bits(), <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"><span class='keyword'>void</span> UndoManager::clearPreviousOriginData()</td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = d-&gt;undoActions.size() - 1 ; i &gt;= 0 ; --i)</td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line"> UndoAction* <span class='keyword'>const</span> action = d-&gt;undoActions[i];</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"> <span class='keyword'>if</span> (action-&gt;hasFileOriginData())</td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"> action-&gt;setFileOriginData(QVariant(), DImageHistory());</td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"><span class='keyword'>bool</span> UndoManager::putImageDataAndHistory(DImg* <span class='keyword'>const</span> img, <span class='keyword'>int</span> stepsBack) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> <span class='keyword'>if</span> (stepsBack &lt;= 0 || stepsBack &gt; d-&gt;undoActions.size())</td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> <span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line"> <span class='comment'>* We need to find a snapshot, for the state the given number of steps back.</span></td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line"> <span class='comment'>* 0 steps back is the current state of the EditorCore.</span></td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> <span class='comment'>* 1 step back is the snapshot of the last undo action, at d-&gt;undoActions.size() - 1.</span></td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> <span class='comment'>* The next problem is that if the corresponding action is reversible,</span></td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> <span class='comment'>* we do not have a snapshot, but need to walk forward to the first snapshot (or current</span></td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> <span class='comment'>* state), then apply the reversible steps.</span></td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> <span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> <span class='keyword'>int</span> step = d-&gt;undoActions.size() - stepsBack;</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> <span class='keyword'>int</span> snapshot;</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> <span class='keyword'>for</span> (snapshot = step ; snapshot &lt; d-&gt;undoActions.size() ; ++snapshot)</td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> <span class='keyword'>if</span> (<span class='keyword'>dynamic_cast</span>&lt;UndoActionIrreversible*&gt;(d-&gt;undoActions.at(snapshot)))</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> <span class='keyword'>break</span>;</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line"> <span class='keyword'>if</span> (snapshot == step)</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line"> getSnapshot(step, img);</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> DImg reverting;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> <span class='comment'>// Get closest available snapshot</span></td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> <span class='keyword'>if</span> (snapshot &lt; d-&gt;undoActions.size())</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> getSnapshot(snapshot, &amp;reverting);</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> reverting = d-&gt;core-&gt;getImg()-&gt;copyImageData();</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> <span class='comment'>// revert reversible actions, until reaching desired step</span></td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>for</span> ( ; snapshot &gt; step ; --snapshot)</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> UndoActionReversible* <span class='keyword'>const</span> reversible = <span class='keyword'>dynamic_cast</span>&lt;UndoActionReversible*&gt;(d-&gt;undoActions.at(snapshot - 1));</td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"> <span class='keyword'>if</span> (!reversible) <span class='comment'>// would be a bug</span></td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='keyword'>continue</span>;</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> reversible-&gt;getReverseFilter().apply(reverting);</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> img-&gt;putImageData(reverting.width(), reverting.height(), reverting.sixteenBit(),</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> reverting.hasAlpha(), reverting.stripImageData(), <span class='keyword'>false</span>);</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> <span class='comment'>// adjust history</span></td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> UndoAction* <span class='keyword'>const</span> action = d-&gt;undoActions.at(step);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> UndoMetadataContainer dataBeforeStep = action-&gt;getMetadata();</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> dataBeforeStep.toImage(*img);</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"><span class='keyword'>void</span> UndoManager::clear(<span class='keyword'>bool</span> clearCache)</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> clearUndoActions();</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> clearRedoActions();</td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> setOrigin();</td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> <span class='keyword'>if</span> (clearCache)</td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> d-&gt;undoCache-&gt;clear();</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"><span class='keyword'>void</span> UndoManager::clearUndoActions()</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> UndoAction* action = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> QList&lt;UndoAction*&gt;::const_iterator it;</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> <span class='keyword'>for</span> (it = d-&gt;undoActions.constBegin() ; it != d-&gt;undoActions.constEnd() ; ++it)</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> action = *it;</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> <span class='keyword'>delete</span> action;</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> d-&gt;undoActions.clear();</td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"><span class='keyword'>void</span> UndoManager::clearRedoActions()</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='keyword'>if</span> (!anyMoreRedo())</td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> <span class='keyword'>return</span>;</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> <span class='comment'>// clear from the level of the first redo action</span></td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> d-&gt;undoCache-&gt;clearFrom(d-&gt;undoActions.size() + 1);</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> qDeleteAll(d-&gt;redoActions);</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> d-&gt;redoActions.clear();</td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"><span class='keyword'>bool</span> UndoManager::anyMoreUndo() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> <span class='keyword'>return</span> !d-&gt;undoActions.isEmpty();</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"><span class='keyword'>bool</span> UndoManager::anyMoreRedo() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> <span class='keyword'>return</span> !d-&gt;redoActions.isEmpty();</td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"><span class='keyword'>int</span> UndoManager::availableUndoSteps() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> <span class='keyword'>return</span> d-&gt;undoActions.isEmpty();</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"><span class='keyword'>int</span> UndoManager::availableRedoSteps() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> <span class='keyword'>return</span> d-&gt;redoActions.isEmpty();</td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line">QStringList UndoManager::getUndoHistory() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> QStringList titles;</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='macro'>foreach (UndoAction* <span class='keyword'>const</span> action, d-&gt;undoActions)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(d-&gt;<br>undoActions); _container_.control &amp;&amp; _container_.i !=<br> _container_.e; ++_container_.i, _container_.control ^= 1) for<br> (UndoAction* const action = *_container_.i; _container_.control<br>; _container_.control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> titles.prepend(action-&gt;getTitle());</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>return</span> titles;</td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line">QStringList UndoManager::getRedoHistory() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> QStringList titles;</td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> <span class='macro'>foreach (UndoAction* <span class='keyword'>const</span> action, d-&gt;redoActions)<span class='expansion'>for (auto _container_ = QtPrivate::qMakeForeachContainer(d-&gt;<br>redoActions); _container_.control &amp;&amp; _container_.i !=<br> _container_.e; ++_container_.i, _container_.control ^= 1) for<br> (UndoAction* const action = *_container_.i; _container_.control<br>; _container_.control = 0)</span></span></td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> titles.prepend(action-&gt;getTitle());</td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>return</span> titles;</td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"><span class='keyword'>bool</span> UndoManager::isAtOrigin() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> <span class='keyword'>return</span> (d-&gt;origin == 0);</td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"><span class='keyword'>bool</span> UndoManager::hasChanges() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> <span class='keyword'>if</span> (!isAtOrigin())</td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>true</span>;</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> DImageHistory currentHistory = d-&gt;core-&gt;getItemHistory();</td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> DImageHistory initialHistory = d-&gt;core-&gt;getInitialImageHistory();</td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> <span class='keyword'>if</span> (currentHistory == initialHistory)</td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"> <span class='keyword'>return</span> <span class='keyword'>false</span>;</td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> <span class='keyword'>return</span> currentHistory.actionCount() &gt; initialHistory.actionCount();</td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"><span class='keyword'>void</span> UndoManager::setOrigin() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> d-&gt;origin = 0;</td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line">DImageHistory UndoManager::getImageHistoryOfFullRedo() <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> <span class='keyword'>if</span> (!d-&gt;redoActions.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> <span class='keyword'>return</span> d-&gt;redoActions.first()-&gt;getMetadata().history;</td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>return</span> d-&gt;core-&gt;getItemHistory();</td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>
diff --git a/static/reports/clang/master/report-f1492e.html b/static/reports/clang/master/report-fd923a.html
similarity index 99%
rename from static/reports/clang/master/report-f1492e.html
rename to static/reports/clang/master/report-fd923a.html
index e2ebe07df..b0f242b4b 100644
--- a/static/reports/clang/master/report-f1492e.html
+++ b/static/reports/clang/master/report-fd923a.html
@@ -1,2819 +1,2819 @@
<!doctype html>
<html>
<head>
<title>/mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</title>
<style type="text/css">
body { color:#000000; background-color:#ffffff }
body { font-family:Helvetica, sans-serif; font-size:10pt }
h1 { font-size:14pt }
.FileName { margin-top: 5px; margin-bottom: 5px; display: inline; }
.FileNav { margin-left: 5px; margin-right: 5px; display: inline; }
.FileNav a { text-decoration:none; font-size: larger; }
.divider { margin-top: 30px; margin-bottom: 30px; height: 15px; }
.divider { background-color: gray; }
.code { border-collapse:collapse; width:100%; }
.code { font-family: "Monospace", monospace; font-size:10pt }
.code { line-height: 1.2em }
.comment { color: green; font-style: oblique }
.keyword { color: blue }
.string_literal { color: red }
.directive { color: darkmagenta }
/* Macro expansions. */
.expansion { display: none; }
.macro:hover .expansion {
display: block;
border: 2px solid #FF0000;
padding: 2px;
background-color:#FFF0F0;
font-weight: normal;
-webkit-border-radius:5px;
-webkit-box-shadow:1px 1px 7px #000;
border-radius:5px;
box-shadow:1px 1px 7px #000;
position: absolute;
top: -1em;
left:10em;
z-index: 1
}
#tooltiphint {
position: fixed;
width: 50em;
margin-left: -25em;
left: 50%;
padding: 10px;
border: 1px solid #b0b0b0;
border-radius: 2px;
box-shadow: 1px 1px 7px black;
background-color: #c0c0c0;
z-index: 2;
}
.macro {
color: darkmagenta;
background-color:LemonChiffon;
/* Macros are position: relative to provide base for expansions. */
position: relative;
}
.num { width:2.5em; padding-right:2ex; background-color:#eeeeee }
.num { text-align:right; font-size:8pt }
.num { color:#444444 }
.line { padding-left: 1ex; border-left: 3px solid #ccc }
.line { white-space: pre }
.msg { -webkit-box-shadow:1px 1px 7px #000 }
.msg { box-shadow:1px 1px 7px #000 }
.msg { -webkit-border-radius:5px }
.msg { border-radius:5px }
.msg { font-family:Helvetica, sans-serif; font-size:8pt }
.msg { float:left }
.msg { padding:0.25em 1ex 0.25em 1ex }
.msg { margin-top:10px; margin-bottom:10px }
.msg { font-weight:bold }
.msg { max-width:60em; word-wrap: break-word; white-space: pre-wrap }
.msgT { padding:0x; spacing:0x }
.msgEvent { background-color:#fff8b4; color:#000000 }
.msgControl { background-color:#bbbbbb; color:#000000 }
.msgNote { background-color:#ddeeff; color:#000000 }
.mrange { background-color:#dfddf3 }
.mrange { border-bottom:1px solid #6F9DBE }
.PathIndex { font-weight: bold; padding:0px 5px; margin-right:5px; }
.PathIndex { -webkit-border-radius:8px }
.PathIndex { border-radius:8px }
.PathIndexEvent { background-color:#bfba87 }
.PathIndexControl { background-color:#8c8c8c }
.PathNav a { text-decoration:none; font-size: larger }
.CodeInsertionHint { font-weight: bold; background-color: #10dd10 }
.CodeRemovalHint { background-color:#de1010 }
.CodeRemovalHint { border-bottom:1px solid #6F9DBE }
.selected{ background-color:orange !important; }
table.simpletable {
padding: 5px;
font-size:12pt;
margin:20px;
border-collapse: collapse; border-spacing: 0px;
}
td.rowname {
text-align: right;
vertical-align: top;
font-weight: bold;
color:#444444;
padding-right:2ex;
}
/* Hidden text. */
input.spoilerhider + label {
cursor: pointer;
text-decoration: underline;
display: block;
}
input.spoilerhider {
display: none;
}
input.spoilerhider ~ .spoiler {
overflow: hidden;
margin: 10px auto 0;
height: 0;
opacity: 0;
}
input.spoilerhider:checked + label + .spoiler{
height: auto;
opacity: 1;
}
</style>
</head>
<body>
<!-- BUGDESC Array access (from variable 'ypoints') results in a null pointer dereference -->
<!-- BUGTYPE Dereference of null pointer -->
<!-- BUGCATEGORY Logic error -->
<!-- BUGFILE /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -->
<!-- FILENAME dimg_scale.cpp -->
<!-- FUNCTIONNAME dimgScaleAARGBA -->
<!-- ISSUEHASHCONTENTOFLINEINCONTEXT ddcdb5ebbe7d30057c16910984e6054c -->
<!-- BUGLINE 1014 -->
<!-- BUGCOLUMN 24 -->
<!-- BUGPATHLENGTH 41 -->
<!-- BUGMETAEND -->
<!-- REPORTHEADER -->
<h3>Bug Summary</h3>
<table class="simpletable">
<tr><td class="rowname">File:</td><td>mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp</td></tr>
<tr><td class="rowname">Warning:</td><td><a href="#EndPath">line 1014, column 24</a><br />Array access (from variable 'ypoints') results in a null pointer dereference</td></tr>
</table>
<!-- REPORTSUMMARYEXTRA -->
<h3>Annotated Source Code</h3>
<p>Press <a href="#" onclick="toggleHelp(); return false;">'?'</a>
to see keyboard shortcuts</p>
<input type="checkbox" class="spoilerhider" id="showinvocation" />
<label for="showinvocation" >Show analyzer invocation</label>
-<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-05-174338-8740-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
+<div class="spoiler">clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_scale.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 qDNGDebug=0 -D qDNGLittleEndian=1 -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget=1 -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/6.x/core/libs/dimg -I /mnt/devel/GIT/6.x/build.scan/core/libs/dimg/dimg_src_autogen/include -I /mnt/devel/GIT/6.x/core/app/date -I /mnt/devel/GIT/6.x/core/app/dragdrop -I /mnt/devel/GIT/6.x/core/app/filters -I /mnt/devel/GIT/6.x/core/app/items/delegate -I /mnt/devel/GIT/6.x/core/app/items/overlays -I /mnt/devel/GIT/6.x/core/app/items/thumbbar -I /mnt/devel/GIT/6.x/core/app/items/utils -I /mnt/devel/GIT/6.x/core/app/items/views -I /mnt/devel/GIT/6.x/core/app/main -I /mnt/devel/GIT/6.x/core/app/utils -I /mnt/devel/GIT/6.x/core/app/views/preview -I /mnt/devel/GIT/6.x/core/app/views/sidebar -I /mnt/devel/GIT/6.x/core/app/views/stack -I /mnt/devel/GIT/6.x/core/app/views/tableview -I /mnt/devel/GIT/6.x/core/app/views/utils -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/6.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/6.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/6.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/6.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/6.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/6.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/6.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/6.x/core/dplugins/dimg/png -I /mnt/devel/GIT/6.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/6.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/6.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/6.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/6.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/6.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/6.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/6.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/6.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/6.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/6.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/6.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/editsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/examples/uploadsample -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/mediawiki/tests/fakeserver -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/6.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/6.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/6.x/core/libs/album/engine -I /mnt/devel/GIT/6.x/core/libs/album/manager -I /mnt/devel/GIT/6.x/core/libs/album/treeview -I /mnt/devel/GIT/6.x/core/libs/album/widgets -I /mnt/devel/GIT/6.x/core/libs/database/collection -I /mnt/devel/GIT/6.x/core/libs/database/coredb -I /mnt/devel/GIT/6.x/core/libs/database/dbjobs -I /mnt/devel/GIT/6.x/core/libs/database/engine -I /mnt/devel/GIT/6.x/core/libs/database/haar -I /mnt/devel/GIT/6.x/core/libs/database/history -I /mnt/devel/GIT/6.x/core/libs/database/item/containers -I /mnt/devel/GIT/6.x/core/libs/database/item/lister -I /mnt/devel/GIT/6.x/core/libs/database/item/query -I /mnt/devel/GIT/6.x/core/libs/database/item/scanner -I /mnt/devel/GIT/6.x/core/libs/database/models -I /mnt/devel/GIT/6.x/core/libs/database/server -I /mnt/devel/GIT/6.x/core/libs/database/similaritydb -I /mnt/devel/GIT/6.x/core/libs/database/tags -I /mnt/devel/GIT/6.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/6.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/6.x/core/libs/database/utils/scan -I /mnt/devel/GIT/6.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/6.x/core/libs/dialogs -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/6.x/core/libs/dimg/filters -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/6.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/6.x/core/libs/dimg/history -I /mnt/devel/GIT/6.x/core/libs/dimg/loaders -I /mnt/devel/GIT/6.x/core/libs/dngwriter -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/6.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/6.x/core/libs/dplugins/core -I /mnt/devel/GIT/6.x/core/libs/dplugins/iface -I /mnt/devel/GIT/6.x/core/libs/dplugins/setup -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/6.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/6.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/6.x/core/libs/dtrash -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/6.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/6.x/core/libs/facesengine -I /mnt/devel/GIT/6.x/core/libs/facesengine/detection -I /mnt/devel/GIT/6.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/6.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/dnn_base -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_processing -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/image_transforms -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/matrix/lapack -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn/dnnface/nn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/dlib-dnn -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/6.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/6.x/core/libs/fileactionmanager -I /mnt/devel/GIT/6.x/core/libs/filters -I /mnt/devel/GIT/6.x/core/libs/iojobs -I /mnt/devel/GIT/6.x/core/libs/jpegutils -I /mnt/devel/GIT/6.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/6.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/6.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/6.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/6.x/core/libs/models -I /mnt/devel/GIT/6.x/core/libs/notificationmanager -I /mnt/devel/GIT/6.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/6.x/core/libs/pgfutils -I /mnt/devel/GIT/6.x/core/libs/progressmanager -I /mnt/devel/GIT/6.x/core/libs/properties/captions -I /mnt/devel/GIT/6.x/core/libs/properties/geolocation -I /mnt/devel/GIT/6.x/core/libs/properties/history -I /mnt/devel/GIT/6.x/core/libs/properties/import -I /mnt/devel/GIT/6.x/core/libs/properties -I /mnt/devel/GIT/6.x/core/libs/rawengine -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/6.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/6.x/core/libs/settings -I /mnt/devel/GIT/6.x/core/libs/tags/engine -I /mnt/devel/GIT/6.x/core/libs/tags/manager/models -I /mnt/devel/GIT/6.x/core/libs/tags/manager -I /mnt/devel/GIT/6.x/core/libs/tags/widgets -I /mnt/devel/GIT/6.x/core/libs/template -I /mnt/devel/GIT/6.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/6.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/6.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/6.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/6.x/core/libs/threadimageio/video -I /mnt/devel/GIT/6.x/core/libs/threads -I /mnt/devel/GIT/6.x/core/libs/timeadjust -I /mnt/devel/GIT/6.x/core/libs/transitionmngr -I /mnt/devel/GIT/6.x/core/libs/versionmanager -I /mnt/devel/GIT/6.x/core/libs/video/manager -I /mnt/devel/GIT/6.x/core/libs/video/player -I /mnt/devel/GIT/6.x/core/libs/widgets/colors -I /mnt/devel/GIT/6.x/core/libs/widgets/combo -I /mnt/devel/GIT/6.x/core/libs/widgets/common -I /mnt/devel/GIT/6.x/core/libs/widgets/files -I /mnt/devel/GIT/6.x/core/libs/widgets/fonts -I /mnt/devel/GIT/6.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/6.x/core/libs/widgets/history -I /mnt/devel/GIT/6.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/6.x/core/libs/widgets/itemview -I /mnt/devel/GIT/6.x/core/libs/widgets/layout -I /mnt/devel/GIT/6.x/core/libs/widgets/mainview -I /mnt/devel/GIT/6.x/core/libs/widgets/metadata -I /mnt/devel/GIT/6.x/core/libs/widgets/range -I /mnt/devel/GIT/6.x/core/showfoto/main -I /mnt/devel/GIT/6.x/core/showfoto/setup -I /mnt/devel/GIT/6.x/core/showfoto/thumbbar -I /mnt/devel/GIT/6.x/core/tests/advancedrename -I /mnt/devel/GIT/6.x/core/tests/albummodel -I /mnt/devel/GIT/6.x/core/tests/database -I /mnt/devel/GIT/6.x/core/tests/dimg -I /mnt/devel/GIT/6.x/core/tests/facesengine -I /mnt/devel/GIT/6.x/core/tests/facesengine/demo -I /mnt/devel/GIT/6.x/core/tests/fileio -I /mnt/devel/GIT/6.x/core/tests/geolocation/editor -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/6.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/6.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/6.x/core/tests/imgqsort -I /mnt/devel/GIT/6.x/core/tests/iojobs -I /mnt/devel/GIT/6.x/core/tests/metadataengine -I /mnt/devel/GIT/6.x/core/tests/modeltest -I /mnt/devel/GIT/6.x/core/tests/multithreading -I /mnt/devel/GIT/6.x/core/tests/timestampupdate -I /mnt/devel/GIT/6.x/core/tests/widgets -I /mnt/devel/GIT/6.x/core/utilities/advancedrename -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/6.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/6.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/6.x/core/utilities/facemanagement -I /mnt/devel/GIT/6.x/core/utilities/firstrun -I /mnt/devel/GIT/6.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/6.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/6.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/6.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/6.x/core/utilities/import/backend -I /mnt/devel/GIT/6.x/core/utilities/import/dialogs -I /mnt/devel/GIT/6.x/core/utilities/import/items -I /mnt/devel/GIT/6.x/core/utilities/import/main -I /mnt/devel/GIT/6.x/core/utilities/import/models -I /mnt/devel/GIT/6.x/core/utilities/import/views -I /mnt/devel/GIT/6.x/core/utilities/import/widgets -I /mnt/devel/GIT/6.x/core/utilities/lighttable -I /mnt/devel/GIT/6.x/core/utilities/maintenance -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/6.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/6.x/core/utilities/searchwindow -I /mnt/devel/GIT/6.x/core/utilities/setup/album -I /mnt/devel/GIT/6.x/core/utilities/setup/camera -I /mnt/devel/GIT/6.x/core/utilities/setup/collections -I /mnt/devel/GIT/6.x/core/utilities/setup/editor -I /mnt/devel/GIT/6.x/core/utilities/setup/metadata -I /mnt/devel/GIT/6.x/core/utilities/setup -I /mnt/devel/GIT/6.x/core/utilities/slideshow -I /mnt/devel/GIT/6.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/6.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.3.1/../../../../include/c++/8.3.1 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.3.1/../../../../include/c++/8.3.1/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 -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/6.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/6.x/project/reports/report.scan/2019-10-12-142348-16205-1 -x c++ /mnt/devel/GIT/6.x/core/libs/dimg/dimg_scale.cpp -faddrsig
</div>
<div id='tooltiphint' hidden="true">
<p>Keyboard shortcuts: </p>
<ul>
<li>Use 'j/k' keys for keyboard navigation</li>
<li>Use 'Shift+S' to show/hide relevant lines</li>
<li>Use '?' to toggle this window</li>
</ul>
<a href="#" onclick="toggleHelp(); return false;">Close</a>
</div>
<script type='text/javascript'>
var relevant_lines = {"1": {"65": 1, "66": 1, "67": 1, "68": 1, "69": 1, "70": 1, "71": 1, "72": 1, "264": 1, "265": 1, "266": 1, "267": 1, "270": 1, "271": 1, "272": 1, "273": 1, "274": 1, "275": 1, "278": 1, "283": 1, "289": 1, "292": 1, "293": 1, "295": 1, "301": 1, "306": 1, "313": 1, "319": 1, "325": 1, "331": 1, "333": 1, "335": 1, "356": 1, "358": 1, "359": 1, "360": 1, "361": 1, "362": 1, "363": 1, "417": 1, "418": 1, "419": 1, "420": 1, "421": 1, "422": 1, "424": 1, "425": 1, "426": 1, "428": 1, "430": 1, "431": 1, "434": 1, "437": 1, "438": 1, "439": 1, "440": 1, "441": 1, "443": 1, "444": 1, "445": 1, "447": 1, "449": 1, "450": 1, "453": 1, "456": 1, "457": 1, "458": 1, "459": 1, "461": 1, "464": 1, "486": 1, "487": 1, "488": 1, "489": 1, "490": 1, "492": 1, "494": 1, "495": 1, "496": 1, "497": 1, "501": 1, "504": 1, "505": 1, "506": 1, "507": 1, "508": 1, "509": 1, "510": 1, "511": 1, "513": 1, "514": 1, "516": 1, "518": 1, "520": 1, "522": 1, "523": 1, "531": 1, "533": 1, "535": 1, "554": 1, "652": 1, "653": 1, "654": 1, "655": 1, "656": 1, "657": 1, "658": 1, "661": 1, "662": 1, "663": 1, "664": 1, "665": 1, "666": 1, "667": 1, "668": 1, "669": 1, "670": 1, "671": 1, "672": 1, "673": 1, "674": 1, "675": 1, "676": 1, "678": 1, "679": 1, "680": 1, "681": 1, "684": 1, "803": 1, "897": 1, "998": 1, "999": 1, "1000": 1, "1001": 1, "1003": 1, "1005": 1, "1006": 1, "1007": 1, "1009": 1, "1011": 1, "1012": 1, "1014": 1}, "17066": {"130": 1, "131": 1, "133": 1, "134": 1}, "17430": {"184": 1, "185": 1, "199": 1, "200": 1, "214": 1, "215": 1, "217": 1, "218": 1, "265": 1, "266": 1, "268": 1, "269": 1, "444": 1, "445": 1, "446": 1}, "46996": {"245": 1, "246": 1, "247": 1, "248": 1, "250": 1, "252": 1, "253": 1, "254": 1, "255": 1, "256": 1, "257": 1}};
var filterCounterexample = function (hide) {
var tables = document.getElementsByClassName("code");
for (var t=0; t<tables.length; t++) {
var table = tables[t];
var file_id = table.getAttribute("data-fileid");
var lines_in_fid = relevant_lines[file_id];
if (!lines_in_fid) {
lines_in_fid = {};
}
var lines = table.getElementsByClassName("codeline");
for (var i=0; i<lines.length; i++) {
var el = lines[i];
var lineNo = el.getAttribute("data-linenumber");
if (!lines_in_fid[lineNo]) {
if (hide) {
el.setAttribute("hidden", "");
} else {
el.removeAttribute("hidden");
}
}
}
}
}
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "S") {
var checked = document.getElementsByName("showCounterexample")[0].checked;
filterCounterexample(!checked);
document.getElementsByName("showCounterexample")[0].checked = !checked;
} else {
return;
}
event.preventDefault();
}, true);
document.addEventListener("DOMContentLoaded", function() {
document.querySelector('input[name="showCounterexample"]').onchange=
function (event) {
filterCounterexample(this.checked);
};
});
</script>
<form>
<input type="checkbox" name="showCounterexample" id="showCounterexample" />
<label for="showCounterexample">
Show only relevant lines
</label>
</form>
<script type='text/javascript'>
var digitMatcher = new RegExp("[0-9]+");
document.addEventListener("DOMContentLoaded", function() {
document.querySelectorAll(".PathNav > a").forEach(
function(currentValue, currentIndex) {
var hrefValue = currentValue.getAttribute("href");
currentValue.onclick = function() {
scrollTo(document.querySelector(hrefValue));
return false;
};
});
});
var findNum = function() {
var s = document.querySelector(".selected");
if (!s || s.id == "EndPath") {
return 0;
}
var out = parseInt(digitMatcher.exec(s.id)[0]);
return out;
};
var scrollTo = function(el) {
document.querySelectorAll(".selected").forEach(function(s) {
s.classList.remove("selected");
});
el.classList.add("selected");
window.scrollBy(0, el.getBoundingClientRect().top -
(window.innerHeight / 2));
}
var move = function(num, up, numItems) {
if (num == 1 && up || num == numItems - 1 && !up) {
return 0;
} else if (num == 0 && up) {
return numItems - 1;
} else if (num == 0 && !up) {
return 1 % numItems;
}
return up ? num - 1 : num + 1;
}
var numToId = function(num) {
if (num == 0) {
return document.getElementById("EndPath")
}
return document.getElementById("Path" + num);
};
var navigateTo = function(up) {
var numItems = document.querySelectorAll(
".line > .msgEvent, .line > .msgControl").length;
var currentSelected = findNum();
var newSelected = move(currentSelected, up, numItems);
var newEl = numToId(newSelected, numItems);
// Scroll element into center.
scrollTo(newEl);
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "j") {
navigateTo(/*up=*/false);
} else if (event.key == "k") {
navigateTo(/*up=*/true);
} else {
return;
}
event.preventDefault();
}, true);
</script>
<script type='text/javascript'>
var toggleHelp = function() {
var hint = document.querySelector("#tooltiphint");
var attributeName = "hidden";
if (hint.hasAttribute(attributeName)) {
hint.removeAttribute(attributeName);
} else {
hint.setAttribute("hidden", "true");
}
};
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return;
}
if (event.key == "?") {
toggleHelp();
} else {
return;
}
event.preventDefault();
});
</script>
<table class="code" data-fileid="1">
<tr class="codeline" data-linenumber="1"><td class="num" id="LN1">1</td><td class="line"><span class='comment'>/* ============================================================</span></td></tr>
<tr class="codeline" data-linenumber="2"><td class="num" id="LN2">2</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="3"><td class="num" id="LN3">3</td><td class="line"> <span class='comment'>* This file is a part of digiKam project</span></td></tr>
<tr class="codeline" data-linenumber="4"><td class="num" id="LN4">4</td><td class="line"> <span class='comment'>* https://www.digikam.org</span></td></tr>
<tr class="codeline" data-linenumber="5"><td class="num" id="LN5">5</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="6"><td class="num" id="LN6">6</td><td class="line"> <span class='comment'>* Date : 2005-06-14</span></td></tr>
<tr class="codeline" data-linenumber="7"><td class="num" id="LN7">7</td><td class="line"> <span class='comment'>* Description : digiKam 8/16 bits image management API.</span></td></tr>
<tr class="codeline" data-linenumber="8"><td class="num" id="LN8">8</td><td class="line"> <span class='comment'>* Description : Smoothscale method based on Imlib2's implementations.</span></td></tr>
<tr class="codeline" data-linenumber="9"><td class="num" id="LN9">9</td><td class="line"> <span class='comment'>* https://git.enlightenment.org/legacy/imlib2.git/tree/src/lib/scale.c</span></td></tr>
<tr class="codeline" data-linenumber="10"><td class="num" id="LN10">10</td><td class="line"> <span class='comment'>* Ported to C++ and QImage</span></td></tr>
<tr class="codeline" data-linenumber="11"><td class="num" id="LN11">11</td><td class="line"> <span class='comment'>* Add smoothScaleSection to scale only an image section.</span></td></tr>
<tr class="codeline" data-linenumber="12"><td class="num" id="LN12">12</td><td class="line"> <span class='comment'>* Add 16 bits color depth image support.</span></td></tr>
<tr class="codeline" data-linenumber="13"><td class="num" id="LN13">13</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="14"><td class="num" id="LN14">14</td><td class="line"> <span class='comment'>* Copyright (C) 1999-2004 by Carsten Haitzler &lt;raster at rasterman dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="15"><td class="num" id="LN15">15</td><td class="line"> <span class='comment'>* Copyright (C) 2004 by Willem Monsuwe &lt;willem at stack dot nl&gt;</span></td></tr>
<tr class="codeline" data-linenumber="16"><td class="num" id="LN16">16</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Renchi Raju &lt;renchi dot raju at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="17"><td class="num" id="LN17">17</td><td class="line"> <span class='comment'>* Copyright (C) 2005 by Daniel M. Duley &lt;mosfet at interaccess dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="18"><td class="num" id="LN18">18</td><td class="line"> <span class='comment'>* Copyright (C) 2006-2019 by Gilles Caulier &lt;caulier dot gilles at gmail dot com&gt;</span></td></tr>
<tr class="codeline" data-linenumber="19"><td class="num" id="LN19">19</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="20"><td class="num" id="LN20">20</td><td class="line"> <span class='comment'>* This program is free software; you can redistribute it</span></td></tr>
<tr class="codeline" data-linenumber="21"><td class="num" id="LN21">21</td><td class="line"> <span class='comment'>* and/or modify it under the terms of the GNU General</span></td></tr>
<tr class="codeline" data-linenumber="22"><td class="num" id="LN22">22</td><td class="line"> <span class='comment'>* Public License as published by the Free Software Foundation;</span></td></tr>
<tr class="codeline" data-linenumber="23"><td class="num" id="LN23">23</td><td class="line"> <span class='comment'>* either version 2, or (at your option)</span></td></tr>
<tr class="codeline" data-linenumber="24"><td class="num" id="LN24">24</td><td class="line"> <span class='comment'>* any later version.</span></td></tr>
<tr class="codeline" data-linenumber="25"><td class="num" id="LN25">25</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="26"><td class="num" id="LN26">26</td><td class="line"> <span class='comment'>* This program is distributed in the hope that it will be useful,</span></td></tr>
<tr class="codeline" data-linenumber="27"><td class="num" id="LN27">27</td><td class="line"> <span class='comment'>* but WITHOUT ANY WARRANTY; without even the implied warranty of</span></td></tr>
<tr class="codeline" data-linenumber="28"><td class="num" id="LN28">28</td><td class="line"> <span class='comment'>* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></td></tr>
<tr class="codeline" data-linenumber="29"><td class="num" id="LN29">29</td><td class="line"> <span class='comment'>* GNU General Public License for more details.</span></td></tr>
<tr class="codeline" data-linenumber="30"><td class="num" id="LN30">30</td><td class="line"> <span class='comment'>*</span></td></tr>
<tr class="codeline" data-linenumber="31"><td class="num" id="LN31">31</td><td class="line"> <span class='comment'>* ============================================================ */</span></td></tr>
<tr class="codeline" data-linenumber="32"><td class="num" id="LN32">32</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="33"><td class="num" id="LN33">33</td><td class="line"><span class='comment'>// C ANSI includes</span></td></tr>
<tr class="codeline" data-linenumber="34"><td class="num" id="LN34">34</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="35"><td class="num" id="LN35">35</td><td class="line"><span class='keyword'>extern</span> <span class='string_literal'>"C"</span></td></tr>
<tr class="codeline" data-linenumber="36"><td class="num" id="LN36">36</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="37"><td class="num" id="LN37">37</td><td class="line"><span class='directive'>#include &lt;stdint.h&gt;</span></td></tr>
<tr class="codeline" data-linenumber="38"><td class="num" id="LN38">38</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="39"><td class="num" id="LN39">39</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="40"><td class="num" id="LN40">40</td><td class="line"><span class='comment'>// C++ includes</span></td></tr>
<tr class="codeline" data-linenumber="41"><td class="num" id="LN41">41</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="42"><td class="num" id="LN42">42</td><td class="line"><span class='directive'>#include &lt;cstring&gt;</span></td></tr>
<tr class="codeline" data-linenumber="43"><td class="num" id="LN43">43</td><td class="line"><span class='directive'>#include &lt;cstdlib&gt;</span></td></tr>
<tr class="codeline" data-linenumber="44"><td class="num" id="LN44">44</td><td class="line"><span class='directive'>#include &lt;cstdio&gt;</span></td></tr>
<tr class="codeline" data-linenumber="45"><td class="num" id="LN45">45</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="46"><td class="num" id="LN46">46</td><td class="line"><span class='comment'>// Local includes</span></td></tr>
<tr class="codeline" data-linenumber="47"><td class="num" id="LN47">47</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="48"><td class="num" id="LN48">48</td><td class="line"><span class='directive'>#include "digikam_debug.h"</span></td></tr>
<tr class="codeline" data-linenumber="49"><td class="num" id="LN49">49</td><td class="line"><span class='directive'>#include "dimg.h"</span></td></tr>
<tr class="codeline" data-linenumber="50"><td class="num" id="LN50">50</td><td class="line"><span class='directive'>#include "dimg_p.h"</span></td></tr>
<tr class="codeline" data-linenumber="51"><td class="num" id="LN51">51</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="52"><td class="num" id="LN52">52</td><td class="line"><span class='keyword'>typedef</span> uint64_t ullong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="53"><td class="num" id="LN53">53</td><td class="line"><span class='keyword'>typedef</span> int64_t llong; <span class='comment'>// krazy:exclude=typedefs</span></td></tr>
<tr class="codeline" data-linenumber="54"><td class="num" id="LN54">54</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="55"><td class="num" id="LN55">55</td><td class="line"><span class='keyword'>namespace</span> Digikam</td></tr>
<tr class="codeline" data-linenumber="56"><td class="num" id="LN56">56</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="57"><td class="num" id="LN57">57</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="58"><td class="num" id="LN58">58</td><td class="line"><span class='keyword'>namespace</span> DImgScale</td></tr>
<tr class="codeline" data-linenumber="59"><td class="num" id="LN59">59</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="60"><td class="num" id="LN60">60</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="61"><td class="num" id="LN61">61</td><td class="line"><span class='keyword'>class</span> <span class='macro'>Q_DECL_HIDDEN<span class='expansion'>__attribute__((visibility("hidden")))</span></span> DImgScaleInfo</td></tr>
<tr class="codeline" data-linenumber="62"><td class="num" id="LN62">62</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="63"><td class="num" id="LN63">63</td><td class="line"><span class='keyword'>public</span>:</td></tr>
<tr class="codeline" data-linenumber="64"><td class="num" id="LN64">64</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="65"><td class="num" id="LN65">65</td><td class="line"> DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="66"><td class="num" id="LN66">66</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="67"><td class="num" id="LN67">67</td><td class="line"> xpoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="68"><td class="num" id="LN68">68</td><td class="line"> <span class="mrange">ypoints = <span class='keyword'>nullptr</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path20" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">20</div></td><td><div class="PathNav"><a href="#Path19" title="Previous event (19)">&#x2190;</a></div></td></td><td>Null pointer value stored to field 'ypoints'</td><td><div class="PathNav"><a href="#Path21" title="Next event (21)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="69"><td class="num" id="LN69">69</td><td class="line"> ypoints16 = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="70"><td class="num" id="LN70">70</td><td class="line"> xapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="71"><td class="num" id="LN71">71</td><td class="line"> yapoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="72"><td class="num" id="LN72">72</td><td class="line"> xup_yup = 0;</td></tr>
<tr class="codeline" data-linenumber="73"><td class="num" id="LN73">73</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="74"><td class="num" id="LN74">74</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="75"><td class="num" id="LN75">75</td><td class="line"> ~DImgScaleInfo()</td></tr>
<tr class="codeline" data-linenumber="76"><td class="num" id="LN76">76</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="77"><td class="num" id="LN77">77</td><td class="line"> <span class='keyword'>delete</span> [] xpoints;</td></tr>
<tr class="codeline" data-linenumber="78"><td class="num" id="LN78">78</td><td class="line"> <span class='keyword'>delete</span> [] ypoints;</td></tr>
<tr class="codeline" data-linenumber="79"><td class="num" id="LN79">79</td><td class="line"> <span class='keyword'>delete</span> [] ypoints16;</td></tr>
<tr class="codeline" data-linenumber="80"><td class="num" id="LN80">80</td><td class="line"> <span class='keyword'>delete</span> [] xapoints;</td></tr>
<tr class="codeline" data-linenumber="81"><td class="num" id="LN81">81</td><td class="line"> <span class='keyword'>delete</span> [] yapoints;</td></tr>
<tr class="codeline" data-linenumber="82"><td class="num" id="LN82">82</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="83"><td class="num" id="LN83">83</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="84"><td class="num" id="LN84">84</td><td class="line"> <span class='keyword'>int</span>* xpoints;</td></tr>
<tr class="codeline" data-linenumber="85"><td class="num" id="LN85">85</td><td class="line"> uint** ypoints;</td></tr>
<tr class="codeline" data-linenumber="86"><td class="num" id="LN86">86</td><td class="line"> ullong** ypoints16;</td></tr>
<tr class="codeline" data-linenumber="87"><td class="num" id="LN87">87</td><td class="line"> <span class='keyword'>int</span>* xapoints;</td></tr>
<tr class="codeline" data-linenumber="88"><td class="num" id="LN88">88</td><td class="line"> <span class='keyword'>int</span>* yapoints;</td></tr>
<tr class="codeline" data-linenumber="89"><td class="num" id="LN89">89</td><td class="line"> <span class='keyword'>int</span> xup_yup;</td></tr>
<tr class="codeline" data-linenumber="90"><td class="num" id="LN90">90</td><td class="line">};</td></tr>
<tr class="codeline" data-linenumber="91"><td class="num" id="LN91">91</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="92"><td class="num" id="LN92">92</td><td class="line">uint** dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="93"><td class="num" id="LN93">93</td><td class="line">ullong** dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh);</td></tr>
<tr class="codeline" data-linenumber="94"><td class="num" id="LN94">94</td><td class="line"><span class='keyword'>int</span>* dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw);</td></tr>
<tr class="codeline" data-linenumber="95"><td class="num" id="LN95">95</td><td class="line"><span class='keyword'>int</span>* dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up);</td></tr>
<tr class="codeline" data-linenumber="96"><td class="num" id="LN96">96</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="97"><td class="num" id="LN97">97</td><td class="line">DImgScaleInfo* dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="98"><td class="num" id="LN98">98</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="99"><td class="num" id="LN99">99</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="100"><td class="num" id="LN100">100</td><td class="line"> <span class='keyword'>bool</span> sixteenBit,</td></tr>
<tr class="codeline" data-linenumber="101"><td class="num" id="LN101">101</td><td class="line"> <span class='keyword'>bool</span> aa);</td></tr>
<tr class="codeline" data-linenumber="102"><td class="num" id="LN102">102</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="103"><td class="num" id="LN103">103</td><td class="line"><span class='comment'>// 8 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="104"><td class="num" id="LN104">104</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="105"><td class="num" id="LN105">105</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="106"><td class="num" id="LN106">106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="107"><td class="num" id="LN107">107</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="108"><td class="num" id="LN108">108</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="109"><td class="num" id="LN109">109</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="110"><td class="num" id="LN110">110</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="111"><td class="num" id="LN111">111</td><td class="line"><span class='comment'>// 16 bit, not smoothed</span></td></tr>
<tr class="codeline" data-linenumber="112"><td class="num" id="LN112">112</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="113"><td class="num" id="LN113">113</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow);</td></tr>
<tr class="codeline" data-linenumber="114"><td class="num" id="LN114">114</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="115"><td class="num" id="LN115">115</td><td class="line"><span class='keyword'>void</span> dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="116"><td class="num" id="LN116">116</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="117"><td class="num" id="LN117">117</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="118"><td class="num" id="LN118">118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="119"><td class="num" id="LN119">119</td><td class="line"><span class='comment'>// 8 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="120"><td class="num" id="LN120">120</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="121"><td class="num" id="LN121">121</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="122"><td class="num" id="LN122">122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="123"><td class="num" id="LN123">123</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="124"><td class="num" id="LN124">124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="125"><td class="num" id="LN125">125</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="126"><td class="num" id="LN126">126</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="127"><td class="num" id="LN127">127</td><td class="line"><span class='comment'>// 8 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="128"><td class="num" id="LN128">128</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="129"><td class="num" id="LN129">129</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="130"><td class="num" id="LN130">130</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="131"><td class="num" id="LN131">131</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="132"><td class="num" id="LN132">132</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="133"><td class="num" id="LN133">133</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="134"><td class="num" id="LN134">134</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="135"><td class="num" id="LN135">135</td><td class="line"><span class='comment'>// 16 bit, RGBA</span></td></tr>
<tr class="codeline" data-linenumber="136"><td class="num" id="LN136">136</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="137"><td class="num" id="LN137">137</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="138"><td class="num" id="LN138">138</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="139"><td class="num" id="LN139">139</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="140"><td class="num" id="LN140">140</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="141"><td class="num" id="LN141">141</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="142"><td class="num" id="LN142">142</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="143"><td class="num" id="LN143">143</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="144"><td class="num" id="LN144">144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="145"><td class="num" id="LN145">145</td><td class="line"><span class='comment'>// 16 bit, RGB</span></td></tr>
<tr class="codeline" data-linenumber="146"><td class="num" id="LN146">146</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="147"><td class="num" id="LN147">147</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="148"><td class="num" id="LN148">148</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow);</td></tr>
<tr class="codeline" data-linenumber="149"><td class="num" id="LN149">149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="150"><td class="num" id="LN150">150</td><td class="line"><span class='keyword'>void</span> dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="151"><td class="num" id="LN151">151</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="152"><td class="num" id="LN152">152</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="153"><td class="num" id="LN153">153</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh);</td></tr>
<tr class="codeline" data-linenumber="154"><td class="num" id="LN154">154</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="155"><td class="num" id="LN155">155</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="156"><td class="num" id="LN156">156</td><td class="line"><span class='keyword'>using</span> <span class='keyword'>namespace</span> DImgScale;</td></tr>
<tr class="codeline" data-linenumber="157"><td class="num" id="LN157">157</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="158"><td class="num" id="LN158">158</td><td class="line"><span class='comment'>/*</span></td></tr>
<tr class="codeline" data-linenumber="159"><td class="num" id="LN159">159</td><td class="line"><span class='comment'>#define CLIP(x, y, w, h, xx, yy, ww, hh) \</span></td></tr>
<tr class="codeline" data-linenumber="160"><td class="num" id="LN160">160</td><td class="line"><span class='comment'>if (x &lt; (xx)) {w += (x - (xx)); x = (xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="161"><td class="num" id="LN161">161</td><td class="line"><span class='comment'>if (y &lt; (yy)) {h += (y - (yy)); y = (yy);} \</span></td></tr>
<tr class="codeline" data-linenumber="162"><td class="num" id="LN162">162</td><td class="line"><span class='comment'>if ((x + w) &gt; ((xx) + (ww))) {w = (ww) - (x - xx);} \</span></td></tr>
<tr class="codeline" data-linenumber="163"><td class="num" id="LN163">163</td><td class="line"><span class='comment'>if ((y + h) &gt; ((yy) + (hh))) {h = (hh) - (y - yy);}</span></td></tr>
<tr class="codeline" data-linenumber="164"><td class="num" id="LN164">164</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="165"><td class="num" id="LN165">165</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="166"><td class="num" id="LN166">166</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>const</span> QSize&amp; destSize, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="167"><td class="num" id="LN167">167</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="168"><td class="num" id="LN168">168</td><td class="line"> QSize scaleSize = size();</td></tr>
<tr class="codeline" data-linenumber="169"><td class="num" id="LN169">169</td><td class="line"> scaleSize.scale(destSize, aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="170"><td class="num" id="LN170">170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="171"><td class="num" id="LN171">171</td><td class="line"> <span class='keyword'>if</span> (scaleSize.isEmpty())</td></tr>
<tr class="codeline" data-linenumber="172"><td class="num" id="LN172">172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="173"><td class="num" id="LN173">173</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="174"><td class="num" id="LN174">174</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="175"><td class="num" id="LN175">175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="176"><td class="num" id="LN176">176</td><td class="line"> <span class='keyword'>return</span> smoothScaleClipped(scaleSize, QRect(QPoint(0, 0), scaleSize));</td></tr>
<tr class="codeline" data-linenumber="177"><td class="num" id="LN177">177</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="178"><td class="num" id="LN178">178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="179"><td class="num" id="LN179">179</td><td class="line">DImg DImg::smoothScale(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, Qt::AspectRatioMode aspectRatioMode) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="180"><td class="num" id="LN180">180</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="181"><td class="num" id="LN181">181</td><td class="line"> <span class='keyword'>return</span> smoothScale(QSize(dw, dh), aspectRatioMode);</td></tr>
<tr class="codeline" data-linenumber="182"><td class="num" id="LN182">182</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="183"><td class="num" id="LN183">183</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="184"><td class="num" id="LN184">184</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>const</span> QSize&amp; destSize, <span class='keyword'>const</span> QRect&amp; clip) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="185"><td class="num" id="LN185">185</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="186"><td class="num" id="LN186">186</td><td class="line"> <span class='keyword'>return</span> DImg::smoothScaleClipped(destSize.width(), destSize.height(),</td></tr>
<tr class="codeline" data-linenumber="187"><td class="num" id="LN187">187</td><td class="line"> clip.x(), clip.y(), clip.width(), clip.height());</td></tr>
<tr class="codeline" data-linenumber="188"><td class="num" id="LN188">188</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="189"><td class="num" id="LN189">189</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="190"><td class="num" id="LN190">190</td><td class="line">DImg DImg::smoothScaleClipped(<span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> clipx, <span class='keyword'>int</span> clipy, <span class='keyword'>int</span> clipw, <span class='keyword'>int</span> cliph) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="191"><td class="num" id="LN191">191</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="192"><td class="num" id="LN192">192</td><td class="line"> <span class='keyword'>if</span> (dw &lt;= 0 || dh &lt;= 0 || clipw &lt;= 0 || cliph &lt;= 0 || isNull())</td></tr>
<tr class="codeline" data-linenumber="193"><td class="num" id="LN193">193</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="194"><td class="num" id="LN194">194</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="195"><td class="num" id="LN195">195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="196"><td class="num" id="LN196">196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="197"><td class="num" id="LN197">197</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="198"><td class="num" id="LN198">198</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="199"><td class="num" id="LN199">199</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="200"><td class="num" id="LN200">200</td><td class="line"> <span class='keyword'>if</span> (w &lt;= 0 || h &lt;= 0)</td></tr>
<tr class="codeline" data-linenumber="201"><td class="num" id="LN201">201</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="202"><td class="num" id="LN202">202</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="203"><td class="num" id="LN203">203</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="204"><td class="num" id="LN204">204</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="205"><td class="num" id="LN205">205</td><td class="line"> <span class='comment'>// ensure clip is valid</span></td></tr>
<tr class="codeline" data-linenumber="206"><td class="num" id="LN206">206</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(clipx, clipy, clipw, cliph, dw, dh))</td></tr>
<tr class="codeline" data-linenumber="207"><td class="num" id="LN207">207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="208"><td class="num" id="LN208">208</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="209"><td class="num" id="LN209">209</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="210"><td class="num" id="LN210">210</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="211"><td class="num" id="LN211">211</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="212"><td class="num" id="LN212">212</td><td class="line"> <span class='keyword'>if</span> ((w == (uint)dw) &amp;&amp; (h == (uint)dh))</td></tr>
<tr class="codeline" data-linenumber="213"><td class="num" id="LN213">213</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="214"><td class="num" id="LN214">214</td><td class="line"> <span class='keyword'>if</span> (clipw == dw &amp;&amp; cliph == dh)</td></tr>
<tr class="codeline" data-linenumber="215"><td class="num" id="LN215">215</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="216"><td class="num" id="LN216">216</td><td class="line"> <span class='keyword'>return</span> copy();</td></tr>
<tr class="codeline" data-linenumber="217"><td class="num" id="LN217">217</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="218"><td class="num" id="LN218">218</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="219"><td class="num" id="LN219">219</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="220"><td class="num" id="LN220">220</td><td class="line"> <span class='keyword'>return</span> copy(clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="221"><td class="num" id="LN221">221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="222"><td class="num" id="LN222">222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="223"><td class="num" id="LN223">223</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="224"><td class="num" id="LN224">224</td><td class="line"> DImgScaleInfo* scaleinfo = dimgCalcScaleInfo(*<span class='keyword'>this</span>, w, h, dw, dh, sixteenBit(), <span class='keyword'>true</span>);</td></tr>
<tr class="codeline" data-linenumber="225"><td class="num" id="LN225">225</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="226"><td class="num" id="LN226">226</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="227"><td class="num" id="LN227">227</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="228"><td class="num" id="LN228">228</td><td class="line"> <span class='keyword'>if</span> (sixteenBit())</td></tr>
<tr class="codeline" data-linenumber="229"><td class="num" id="LN229">229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="230"><td class="num" id="LN230">230</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="231"><td class="num" id="LN231">231</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="232"><td class="num" id="LN232">232</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="233"><td class="num" id="LN233">233</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="234"><td class="num" id="LN234">234</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="235"><td class="num" id="LN235">235</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="236"><td class="num" id="LN236">236</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="237"><td class="num" id="LN237">237</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="238"><td class="num" id="LN238">238</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="239"><td class="num" id="LN239">239</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="240"><td class="num" id="LN240">240</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="241"><td class="num" id="LN241">241</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="242"><td class="num" id="LN242">242</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="243"><td class="num" id="LN243">243</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="244"><td class="num" id="LN244">244</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="245"><td class="num" id="LN245">245</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="246"><td class="num" id="LN246">246</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="247"><td class="num" id="LN247">247</td><td class="line"> dimgScaleAARGBA(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="248"><td class="num" id="LN248">248</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="249"><td class="num" id="LN249">249</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="250"><td class="num" id="LN250">250</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="251"><td class="num" id="LN251">251</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="252"><td class="num" id="LN252">252</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="253"><td class="num" id="LN253">253</td><td class="line"> dimgScaleAARGB(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="254"><td class="num" id="LN254">254</td><td class="line"> 0, 0, dw, dh, clipw, w,</td></tr>
<tr class="codeline" data-linenumber="255"><td class="num" id="LN255">255</td><td class="line"> clipx, clipy, clipw, cliph);</td></tr>
<tr class="codeline" data-linenumber="256"><td class="num" id="LN256">256</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="257"><td class="num" id="LN257">257</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="258"><td class="num" id="LN258">258</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="259"><td class="num" id="LN259">259</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="260"><td class="num" id="LN260">260</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="261"><td class="num" id="LN261">261</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="262"><td class="num" id="LN262">262</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="263"><td class="num" id="LN263">263</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="264"><td class="num" id="LN264">264</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>const</span> QRect&amp; sourceRect, <span class='keyword'>const</span> QSize&amp; destSize) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="265"><td class="num" id="LN265">265</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="266"><td class="num" id="LN266">266</td><td class="line"> <span class='keyword'>return</span> <span class="mrange">smoothScaleSection(sourceRect.x(), sourceRect.y(), sourceRect.width(), sourceRect.height(),</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path1" class="msg msgEvent" style="margin-left:12ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">1</div></td><td>Calling 'DImg::smoothScaleSection'</td><td><div class="PathNav"><a href="#Path2" title="Next event (2)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="267"><td class="num" id="LN267">267</td><td class="line"> <span class="mrange">destSize.width(), destSize.height())</span>;</td></tr>
<tr class="codeline" data-linenumber="268"><td class="num" id="LN268">268</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="269"><td class="num" id="LN269">269</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="270"><td class="num" id="LN270">270</td><td class="line">DImg DImg::smoothScaleSection(<span class='keyword'>int</span> sx, <span class='keyword'>int</span> sy,</td></tr>
<tr class="codeline" data-linenumber="271"><td class="num" id="LN271">271</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="272"><td class="num" id="LN272">272</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh) <span class='keyword'>const</span></td></tr>
<tr class="codeline" data-linenumber="273"><td class="num" id="LN273">273</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="274"><td class="num" id="LN274">274</td><td class="line"> uint w = width();</td></tr>
<tr class="codeline" data-linenumber="275"><td class="num" id="LN275">275</td><td class="line"> uint h = height();</td></tr>
<tr class="codeline" data-linenumber="276"><td class="num" id="LN276">276</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="277"><td class="num" id="LN277">277</td><td class="line"> <span class='comment'>// sanity checks</span></td></tr>
<tr class="codeline" data-linenumber="278"><td class="num" id="LN278">278</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">dw &lt;= 0</span>) || (<span class="mrange">dh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path2" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">2</div></td><td><div class="PathNav"><a href="#Path1" title="Previous event (1)">&#x2190;</a></div></td></td><td>Assuming 'dw' is &gt; 0</td><td><div class="PathNav"><a href="#Path3" title="Next event (3)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path3" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">3</div></td><td><div class="PathNav"><a href="#Path2" title="Previous event (2)">&#x2190;</a></div></td></td><td>Assuming 'dh' is &gt; 0</td><td><div class="PathNav"><a href="#Path4" title="Next event (4)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path4" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">4</div></td><td><div class="PathNav"><a href="#Path3" title="Previous event (3)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path5" title="Next event (5)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="279"><td class="num" id="LN279">279</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="280"><td class="num" id="LN280">280</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="281"><td class="num" id="LN281">281</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="282"><td class="num" id="LN282">282</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="283"><td class="num" id="LN283">283</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path5" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">5</div></td><td><div class="PathNav"><a href="#Path4" title="Previous event (4)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path6" title="Next event (6)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path6" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">6</div></td><td><div class="PathNav"><a href="#Path5" title="Previous event (5)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path7" title="Next event (7)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path7" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">7</div></td><td><div class="PathNav"><a href="#Path6" title="Previous event (6)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path8" title="Next event (8)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="284"><td class="num" id="LN284">284</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="285"><td class="num" id="LN285">285</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="286"><td class="num" id="LN286">286</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="287"><td class="num" id="LN287">287</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="288"><td class="num" id="LN288">288</td><td class="line"> <span class='comment'>// clip the source rect to be within the actual image</span></td></tr>
<tr class="codeline" data-linenumber="289"><td class="num" id="LN289">289</td><td class="line"> <span class='keyword'>int</span> <span class='comment'>/*psx, psy,*/</span> psw, psh;</td></tr>
<tr class="codeline" data-linenumber="290"><td class="num" id="LN290">290</td><td class="line"><span class='comment'>// psx = sx;</span></td></tr>
<tr class="codeline" data-linenumber="291"><td class="num" id="LN291">291</td><td class="line"><span class='comment'>// psy = sy;</span></td></tr>
<tr class="codeline" data-linenumber="292"><td class="num" id="LN292">292</td><td class="line"> psw = sw;</td></tr>
<tr class="codeline" data-linenumber="293"><td class="num" id="LN293">293</td><td class="line"> psh = sh;</td></tr>
<tr class="codeline" data-linenumber="294"><td class="num" id="LN294">294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="295"><td class="num" id="LN295">295</td><td class="line"> <span class='keyword'>if</span> (!Private::clipped(sx, sy, sw, sh, w, h))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path8" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">8</div></td><td><div class="PathNav"><a href="#Path7" title="Previous event (7)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path9" title="Next event (9)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="296"><td class="num" id="LN296">296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="297"><td class="num" id="LN297">297</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="298"><td class="num" id="LN298">298</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="299"><td class="num" id="LN299">299</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="300"><td class="num" id="LN300">300</td><td class="line"> <span class='comment'>// clip output coords to clipped input coords</span></td></tr>
<tr class="codeline" data-linenumber="301"><td class="num" id="LN301">301</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psw != sw</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path9" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">9</div></td><td><div class="PathNav"><a href="#Path8" title="Previous event (8)">&#x2190;</a></div></td></td><td>Assuming 'psw' is equal to 'sw'</td><td><div class="PathNav"><a href="#Path10" title="Next event (10)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path10" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">10</div></td><td><div class="PathNav"><a href="#Path9" title="Previous event (9)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path11" title="Next event (11)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="302"><td class="num" id="LN302">302</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="303"><td class="num" id="LN303">303</td><td class="line"> dw = (dw * sw) / psw;</td></tr>
<tr class="codeline" data-linenumber="304"><td class="num" id="LN304">304</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="305"><td class="num" id="LN305">305</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="306"><td class="num" id="LN306">306</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">psh != sh</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path11" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">11</div></td><td><div class="PathNav"><a href="#Path10" title="Previous event (10)">&#x2190;</a></div></td></td><td>Assuming 'psh' is equal to 'sh'</td><td><div class="PathNav"><a href="#Path12" title="Next event (12)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path12" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">12</div></td><td><div class="PathNav"><a href="#Path11" title="Previous event (11)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path13" title="Next event (13)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="307"><td class="num" id="LN307">307</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="308"><td class="num" id="LN308">308</td><td class="line"> dh = (dh * sh) / psh;</td></tr>
<tr class="codeline" data-linenumber="309"><td class="num" id="LN309">309</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="310"><td class="num" id="LN310">310</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="311"><td class="num" id="LN311">311</td><td class="line"> <span class='comment'>// do a second check to see if we now have invalid coords</span></td></tr>
<tr class="codeline" data-linenumber="312"><td class="num" id="LN312">312</td><td class="line"> <span class='comment'>// do not do anything if we have a 0 width or height image to render</span></td></tr>
<tr class="codeline" data-linenumber="313"><td class="num" id="LN313">313</td><td class="line"> <span class='keyword'>if</span> ((dw &lt;= 0) || (dh &lt;= 0))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path13" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">13</div></td><td><div class="PathNav"><a href="#Path12" title="Previous event (12)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path14" title="Next event (14)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="314"><td class="num" id="LN314">314</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="315"><td class="num" id="LN315">315</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="316"><td class="num" id="LN316">316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="317"><td class="num" id="LN317">317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="318"><td class="num" id="LN318">318</td><td class="line"> <span class='comment'>// if the input rect size &lt; 0 do not render either</span></td></tr>
<tr class="codeline" data-linenumber="319"><td class="num" id="LN319">319</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw &lt;= 0</span>) || (<span class="mrange">sh &lt;= 0</span>))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path14" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">14</div></td><td><div class="PathNav"><a href="#Path13" title="Previous event (13)">&#x2190;</a></div></td></td><td>Assuming 'sw' is &gt; 0</td><td><div class="PathNav"><a href="#Path15" title="Next event (15)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path15" class="msg msgEvent" style="margin-left:23ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">15</div></td><td><div class="PathNav"><a href="#Path14" title="Previous event (14)">&#x2190;</a></div></td></td><td>Assuming 'sh' is &gt; 0</td><td><div class="PathNav"><a href="#Path16" title="Next event (16)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path16" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">16</div></td><td><div class="PathNav"><a href="#Path15" title="Previous event (15)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path17" title="Next event (17)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="320"><td class="num" id="LN320">320</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="321"><td class="num" id="LN321">321</td><td class="line"> <span class='keyword'>return</span> DImg();</td></tr>
<tr class="codeline" data-linenumber="322"><td class="num" id="LN322">322</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="323"><td class="num" id="LN323">323</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="324"><td class="num" id="LN324">324</td><td class="line"> <span class='comment'>// do we actually need to scale?</span></td></tr>
<tr class="codeline" data-linenumber="325"><td class="num" id="LN325">325</td><td class="line"> <span class='keyword'>if</span> ((<span class="mrange">sw == dw</span>) &amp;&amp; (sh == dh))</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path17" class="msg msgEvent" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">17</div></td><td><div class="PathNav"><a href="#Path16" title="Previous event (16)">&#x2190;</a></div></td></td><td>Assuming 'sw' is not equal to 'dw'</td><td><div class="PathNav"><a href="#Path18" title="Next event (18)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="326"><td class="num" id="LN326">326</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="327"><td class="num" id="LN327">327</td><td class="line"> <span class='keyword'>return</span> copy(sx, sy, sw, sh);</td></tr>
<tr class="codeline" data-linenumber="328"><td class="num" id="LN328">328</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="329"><td class="num" id="LN329">329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="330"><td class="num" id="LN330">330</td><td class="line"> <span class='comment'>// calculate scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="331"><td class="num" id="LN331">331</td><td class="line"> DImgScaleInfo* scaleinfo = <span class="mrange"><span class="mrange">dimgCalcScaleInfo(*<span class='keyword'>this</span>, sw, sh, dw, dh, sixteenBit(), <span class='keyword'>true</span>)</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path18" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">18</div></td><td><div class="PathNav"><a href="#Path17" title="Previous event (17)">&#x2190;</a></div></td></td><td>Calling 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path19" title="Next event (19)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path27" class="msg msgEvent" style="margin-left:32ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">27</div></td><td><div class="PathNav"><a href="#Path26" title="Previous event (26)">&#x2190;</a></div></td></td><td>Returning from 'dimgCalcScaleInfo'</td><td><div class="PathNav"><a href="#Path28" title="Next event (28)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="332"><td class="num" id="LN332">332</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="333"><td class="num" id="LN333">333</td><td class="line"> DImg buffer(*<span class='keyword'>this</span>, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="334"><td class="num" id="LN334">334</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="335"><td class="num" id="LN335">335</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path28" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">28</div></td><td><div class="PathNav"><a href="#Path27" title="Previous event (27)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path29" title="Next event (29)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path29" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">29</div></td><td><div class="PathNav"><a href="#Path28" title="Previous event (28)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path30" title="Next event (30)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="336"><td class="num" id="LN336">336</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="337"><td class="num" id="LN337">337</td><td class="line"> <span class='keyword'>if</span> (hasAlpha())</td></tr>
<tr class="codeline" data-linenumber="338"><td class="num" id="LN338">338</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="339"><td class="num" id="LN339">339</td><td class="line"> dimgScaleAARGBA16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="340"><td class="num" id="LN340">340</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="341"><td class="num" id="LN341">341</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="342"><td class="num" id="LN342">342</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="343"><td class="num" id="LN343">343</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="344"><td class="num" id="LN344">344</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="345"><td class="num" id="LN345">345</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="346"><td class="num" id="LN346">346</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="347"><td class="num" id="LN347">347</td><td class="line"> dimgScaleAARGB16(scaleinfo, <span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="348"><td class="num" id="LN348">348</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="349"><td class="num" id="LN349">349</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="350"><td class="num" id="LN350">350</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="351"><td class="num" id="LN351">351</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="352"><td class="num" id="LN352">352</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="353"><td class="num" id="LN353">353</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="354"><td class="num" id="LN354">354</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="355"><td class="num" id="LN355">355</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="356"><td class="num" id="LN356">356</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">hasAlpha()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path30" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">30</div></td><td><div class="PathNav"><a href="#Path29" title="Previous event (29)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path31" title="Next event (31)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path31" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">31</div></td><td><div class="PathNav"><a href="#Path30" title="Previous event (30)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path32" title="Next event (32)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="357"><td class="num" id="LN357">357</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="358"><td class="num" id="LN358">358</td><td class="line"> <span class="mrange">dimgScaleAARGBA(scaleinfo,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path32" class="msg msgEvent" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">32</div></td><td><div class="PathNav"><a href="#Path31" title="Previous event (31)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGBA'</td><td><div class="PathNav"><a href="#Path33" title="Next event (33)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="359"><td class="num" id="LN359">359</td><td class="line"> <span class="mrange"><span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr></span>
<tr class="codeline" data-linenumber="360"><td class="num" id="LN360">360</td><td class="line"> <span class="mrange">((sx * dw) / sw),</td></tr></span>
<tr class="codeline" data-linenumber="361"><td class="num" id="LN361">361</td><td class="line"> <span class="mrange">((sy * dh) / sh),</td></tr></span>
<tr class="codeline" data-linenumber="362"><td class="num" id="LN362">362</td><td class="line"> <span class="mrange">dw, dh,</td></tr></span>
<tr class="codeline" data-linenumber="363"><td class="num" id="LN363">363</td><td class="line"> <span class="mrange">dw, w)</span>;</td></tr>
<tr class="codeline" data-linenumber="364"><td class="num" id="LN364">364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="365"><td class="num" id="LN365">365</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="366"><td class="num" id="LN366">366</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="367"><td class="num" id="LN367">367</td><td class="line"> dimgScaleAARGB(scaleinfo,</td></tr>
<tr class="codeline" data-linenumber="368"><td class="num" id="LN368">368</td><td class="line"> <span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(buffer.bits()),</td></tr>
<tr class="codeline" data-linenumber="369"><td class="num" id="LN369">369</td><td class="line"> ((sx * dw) / sw),</td></tr>
<tr class="codeline" data-linenumber="370"><td class="num" id="LN370">370</td><td class="line"> ((sy * dh) / sh),</td></tr>
<tr class="codeline" data-linenumber="371"><td class="num" id="LN371">371</td><td class="line"> dw, dh,</td></tr>
<tr class="codeline" data-linenumber="372"><td class="num" id="LN372">372</td><td class="line"> dw, w);</td></tr>
<tr class="codeline" data-linenumber="373"><td class="num" id="LN373">373</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="374"><td class="num" id="LN374">374</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="375"><td class="num" id="LN375">375</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="376"><td class="num" id="LN376">376</td><td class="line"> <span class='keyword'>delete</span> scaleinfo;</td></tr>
<tr class="codeline" data-linenumber="377"><td class="num" id="LN377">377</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="378"><td class="num" id="LN378">378</td><td class="line"> <span class='keyword'>return</span> buffer;</td></tr>
<tr class="codeline" data-linenumber="379"><td class="num" id="LN379">379</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="380"><td class="num" id="LN380">380</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="381"><td class="num" id="LN381">381</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="382"><td class="num" id="LN382">382</td><td class="line"><span class='comment'>// Code ported from Imlib2...</span></td></tr>
<tr class="codeline" data-linenumber="383"><td class="num" id="LN383">383</td><td class="line"><span class='comment'>//</span></td></tr>
<tr class="codeline" data-linenumber="384"><td class="num" id="LN384">384</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="385"><td class="num" id="LN385">385</td><td class="line"><span class='comment'>// FIXME: replace with mRed, etc... These work on pointers to pixels, not</span></td></tr>
<tr class="codeline" data-linenumber="386"><td class="num" id="LN386">386</td><td class="line"><span class='comment'>// pixel values</span></td></tr>
<tr class="codeline" data-linenumber="387"><td class="num" id="LN387">387</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL(p)<span class='expansion'>((unsigned char*)(p))[3]</span></span> ((unsigned char*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="388"><td class="num" id="LN388">388</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL(p)<span class='expansion'>((unsigned char*)(p))[2]</span></span> ((unsigned char*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="389"><td class="num" id="LN389">389</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL(p)<span class='expansion'>((unsigned char*)(p))[1]</span></span> ((unsigned char*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="390"><td class="num" id="LN390">390</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL(p)<span class='expansion'>((unsigned char*)(p))[0]</span></span> ((unsigned char*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="391"><td class="num" id="LN391">391</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="392"><td class="num" id="LN392">392</td><td class="line"><span class='directive'>#define <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span> (256 - xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="393"><td class="num" id="LN393">393</td><td class="line"><span class='directive'>#define <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> (xapoints[x])</span></td></tr>
<tr class="codeline" data-linenumber="394"><td class="num" id="LN394">394</td><td class="line"><span class='directive'>#define <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span> (256 - yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="395"><td class="num" id="LN395">395</td><td class="line"><span class='directive'>#define <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> (yapoints[dyy + y])</span></td></tr>
<tr class="codeline" data-linenumber="396"><td class="num" id="LN396">396</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="397"><td class="num" id="LN397">397</td><td class="line">uint** DImgScale::dimgCalcYPoints(uint* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="398"><td class="num" id="LN398">398</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="399"><td class="num" id="LN399">399</td><td class="line"> uint** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="400"><td class="num" id="LN400">400</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="401"><td class="num" id="LN401">401</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="402"><td class="num" id="LN402">402</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="403"><td class="num" id="LN403">403</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="404"><td class="num" id="LN404">404</td><td class="line"> p = <span class='keyword'>new</span> uint* [dh+1];</td></tr>
<tr class="codeline" data-linenumber="405"><td class="num" id="LN405">405</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="406"><td class="num" id="LN406">406</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="407"><td class="num" id="LN407">407</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="408"><td class="num" id="LN408">408</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="409"><td class="num" id="LN409">409</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="410"><td class="num" id="LN410">410</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="411"><td class="num" id="LN411">411</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="412"><td class="num" id="LN412">412</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="413"><td class="num" id="LN413">413</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="414"><td class="num" id="LN414">414</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="415"><td class="num" id="LN415">415</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="416"><td class="num" id="LN416">416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="417"><td class="num" id="LN417">417</td><td class="line">ullong** DImgScale::dimgCalcYPoints16(ullong* <span class='keyword'>const</span> src, <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh, <span class='keyword'>int</span> dh)</td></tr>
<tr class="codeline" data-linenumber="418"><td class="num" id="LN418">418</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="419"><td class="num" id="LN419">419</td><td class="line"> ullong** p = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="420"><td class="num" id="LN420">420</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="421"><td class="num" id="LN421">421</td><td class="line"> <span class='keyword'>int</span> i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="422"><td class="num" id="LN422">422</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="423"><td class="num" id="LN423">423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="424"><td class="num" id="LN424">424</td><td class="line"> p = <span class='keyword'>new</span> ullong*[(dh+1)];</td></tr>
<tr class="codeline" data-linenumber="425"><td class="num" id="LN425">425</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="426"><td class="num" id="LN426">426</td><td class="line"> inc = (((ullong)sh) &lt;&lt; 16) / dh;</td></tr>
<tr class="codeline" data-linenumber="427"><td class="num" id="LN427">427</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="428"><td class="num" id="LN428">428</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dh ; ++i)</td></tr>
<tr class="codeline" data-linenumber="429"><td class="num" id="LN429">429</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="430"><td class="num" id="LN430">430</td><td class="line"> p[j++] = src + ((val &gt;&gt; 16) * sw);</td></tr>
<tr class="codeline" data-linenumber="431"><td class="num" id="LN431">431</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="432"><td class="num" id="LN432">432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="433"><td class="num" id="LN433">433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="434"><td class="num" id="LN434">434</td><td class="line"> <span class='keyword'>return</span> p;</td></tr>
<tr class="codeline" data-linenumber="435"><td class="num" id="LN435">435</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="436"><td class="num" id="LN436">436</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="437"><td class="num" id="LN437">437</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcXPoints(<span class='keyword'>int</span> sw, <span class='keyword'>int</span> dw)</td></tr>
<tr class="codeline" data-linenumber="438"><td class="num" id="LN438">438</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="439"><td class="num" id="LN439">439</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="440"><td class="num" id="LN440">440</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="441"><td class="num" id="LN441">441</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="442"><td class="num" id="LN442">442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="443"><td class="num" id="LN443">443</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[dw+1];</td></tr>
<tr class="codeline" data-linenumber="444"><td class="num" id="LN444">444</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="445"><td class="num" id="LN445">445</td><td class="line"> inc = (((ullong)sw) &lt;&lt; 16) / dw;</td></tr>
<tr class="codeline" data-linenumber="446"><td class="num" id="LN446">446</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="447"><td class="num" id="LN447">447</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; dw ; ++i)</td></tr>
<tr class="codeline" data-linenumber="448"><td class="num" id="LN448">448</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="449"><td class="num" id="LN449">449</td><td class="line"> p[j++] = (val &gt;&gt; 16);</td></tr>
<tr class="codeline" data-linenumber="450"><td class="num" id="LN450">450</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="451"><td class="num" id="LN451">451</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="452"><td class="num" id="LN452">452</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="453"><td class="num" id="LN453">453</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="454"><td class="num" id="LN454">454</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="455"><td class="num" id="LN455">455</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="456"><td class="num" id="LN456">456</td><td class="line"><span class='keyword'>int</span>* DImgScale::dimgCalcApoints(<span class='keyword'>int</span> s, <span class='keyword'>int</span> d, <span class='keyword'>int</span> up)</td></tr>
<tr class="codeline" data-linenumber="457"><td class="num" id="LN457">457</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="458"><td class="num" id="LN458">458</td><td class="line"> <span class='keyword'>int</span>* p = <span class='keyword'>nullptr</span>, i, j = 0;</td></tr>
<tr class="codeline" data-linenumber="459"><td class="num" id="LN459">459</td><td class="line"> (<span class='keyword'>void</span>)p; <span class='comment'>// To prevent cppcheck warnings.</span></td></tr>
<tr class="codeline" data-linenumber="460"><td class="num" id="LN460">460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="461"><td class="num" id="LN461">461</td><td class="line"> p = <span class='keyword'>new</span> <span class='keyword'>int</span>[d];</td></tr>
<tr class="codeline" data-linenumber="462"><td class="num" id="LN462">462</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="463"><td class="num" id="LN463">463</td><td class="line"> <span class='comment'>/* scaling up */</span></td></tr>
<tr class="codeline" data-linenumber="464"><td class="num" id="LN464">464</td><td class="line"> <span class='keyword'>if</span> (up)</td></tr>
<tr class="codeline" data-linenumber="465"><td class="num" id="LN465">465</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="466"><td class="num" id="LN466">466</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="467"><td class="num" id="LN467">467</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="468"><td class="num" id="LN468">468</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="469"><td class="num" id="LN469">469</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="470"><td class="num" id="LN470">470</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="471"><td class="num" id="LN471">471</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="472"><td class="num" id="LN472">472</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="473"><td class="num" id="LN473">473</td><td class="line"> p[j++] = (val &gt;&gt; 8) - ((val &gt;&gt; 8) &amp; 0xffffff00);</td></tr>
<tr class="codeline" data-linenumber="474"><td class="num" id="LN474">474</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="475"><td class="num" id="LN475">475</td><td class="line"> <span class='keyword'>if</span> ((<span class='keyword'>int</span>)(val &gt;&gt; 16) &gt;= (s - 1))</td></tr>
<tr class="codeline" data-linenumber="476"><td class="num" id="LN476">476</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="477"><td class="num" id="LN477">477</td><td class="line"> p[j - 1] = 0;</td></tr>
<tr class="codeline" data-linenumber="478"><td class="num" id="LN478">478</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="479"><td class="num" id="LN479">479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="480"><td class="num" id="LN480">480</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="481"><td class="num" id="LN481">481</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="482"><td class="num" id="LN482">482</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="483"><td class="num" id="LN483">483</td><td class="line"> <span class='comment'>/* scaling down */</span></td></tr>
<tr class="codeline" data-linenumber="484"><td class="num" id="LN484">484</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="485"><td class="num" id="LN485">485</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="486"><td class="num" id="LN486">486</td><td class="line"> ullong val, inc;</td></tr>
<tr class="codeline" data-linenumber="487"><td class="num" id="LN487">487</td><td class="line"> <span class='keyword'>int</span> ap, Cp;</td></tr>
<tr class="codeline" data-linenumber="488"><td class="num" id="LN488">488</td><td class="line"> val = 0;</td></tr>
<tr class="codeline" data-linenumber="489"><td class="num" id="LN489">489</td><td class="line"> inc = (((ullong)s) &lt;&lt; 16) / d;</td></tr>
<tr class="codeline" data-linenumber="490"><td class="num" id="LN490">490</td><td class="line"> Cp = ((d &lt;&lt; 14) / s) + 1;</td></tr>
<tr class="codeline" data-linenumber="491"><td class="num" id="LN491">491</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="492"><td class="num" id="LN492">492</td><td class="line"> <span class='keyword'>for</span> (i = 0 ; i &lt; d ; ++i)</td></tr>
<tr class="codeline" data-linenumber="493"><td class="num" id="LN493">493</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="494"><td class="num" id="LN494">494</td><td class="line"> ap = ((0x100 - ((val &gt;&gt; 8) &amp; 0xff)) * Cp) &gt;&gt; 8;</td></tr>
<tr class="codeline" data-linenumber="495"><td class="num" id="LN495">495</td><td class="line"> p[j] = ap | (Cp &lt;&lt; 16);</td></tr>
<tr class="codeline" data-linenumber="496"><td class="num" id="LN496">496</td><td class="line"> ++j;</td></tr>
<tr class="codeline" data-linenumber="497"><td class="num" id="LN497">497</td><td class="line"> val += inc;</td></tr>
<tr class="codeline" data-linenumber="498"><td class="num" id="LN498">498</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="499"><td class="num" id="LN499">499</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="500"><td class="num" id="LN500">500</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="501"><td class="num" id="LN501">501</td><td class="line"> <span class='keyword'>return</span>(p);</td></tr>
<tr class="codeline" data-linenumber="502"><td class="num" id="LN502">502</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="503"><td class="num" id="LN503">503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="504"><td class="num" id="LN504">504</td><td class="line">DImgScaleInfo* DImgScale::dimgCalcScaleInfo(<span class='keyword'>const</span> DImg&amp; img,</td></tr>
<tr class="codeline" data-linenumber="505"><td class="num" id="LN505">505</td><td class="line"> <span class='keyword'>int</span> sw, <span class='keyword'>int</span> sh,</td></tr>
<tr class="codeline" data-linenumber="506"><td class="num" id="LN506">506</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="507"><td class="num" id="LN507">507</td><td class="line"> <span class='keyword'>bool</span> <span class='comment'>/*sixteenBit*/</span>,</td></tr>
<tr class="codeline" data-linenumber="508"><td class="num" id="LN508">508</td><td class="line"> <span class='keyword'>bool</span> aa)</td></tr>
<tr class="codeline" data-linenumber="509"><td class="num" id="LN509">509</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="510"><td class="num" id="LN510">510</td><td class="line"> DImgScaleInfo* isi = <span class='keyword'>new</span> <span class="mrange"><span class="mrange">DImgScaleInfo</span></span>;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path19" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">19</div></td><td><div class="PathNav"><a href="#Path18" title="Previous event (18)">&#x2190;</a></div></td></td><td>Calling default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path20" title="Next event (20)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path21" class="msg msgEvent" style="margin-left:30ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">21</div></td><td><div class="PathNav"><a href="#Path20" title="Previous event (20)">&#x2190;</a></div></td></td><td>Returning from default constructor for 'DImgScaleInfo'</td><td><div class="PathNav"><a href="#Path22" title="Next event (22)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="511"><td class="num" id="LN511">511</td><td class="line"> <span class='keyword'>int</span> scw, sch;</td></tr>
<tr class="codeline" data-linenumber="512"><td class="num" id="LN512">512</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="513"><td class="num" id="LN513">513</td><td class="line"> scw = dw * img.width() / sw;</td></tr>
<tr class="codeline" data-linenumber="514"><td class="num" id="LN514">514</td><td class="line"> sch = dh * img.height() / sh;</td></tr>
<tr class="codeline" data-linenumber="515"><td class="num" id="LN515">515</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="516"><td class="num" id="LN516">516</td><td class="line"> isi-&gt;xup_yup = (<span class="mrange">abs(dw) &gt;= sw</span>) + ((<span class="mrange">abs(dh) &gt;= sh</span>) &lt;&lt; 1);</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path22" class="msg msgEvent" style="margin-left:21ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">22</div></td><td><div class="PathNav"><a href="#Path21" title="Previous event (21)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path23" title="Next event (23)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path23" class="msg msgEvent" style="margin-left:40ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">23</div></td><td><div class="PathNav"><a href="#Path22" title="Previous event (22)">&#x2190;</a></div></td></td><td>Assuming the condition is false</td><td><div class="PathNav"><a href="#Path24" title="Next event (24)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="517"><td class="num" id="LN517">517</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="518"><td class="num" id="LN518">518</td><td class="line"> isi-&gt;xpoints = dimgCalcXPoints(img.width(), scw);</td></tr>
<tr class="codeline" data-linenumber="519"><td class="num" id="LN519">519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="520"><td class="num" id="LN520">520</td><td class="line"> <span class='keyword'>if</span> (<span class="mrange">img.sixteenBit()</span>)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path24" class="msg msgEvent" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">24</div></td><td><div class="PathNav"><a href="#Path23" title="Previous event (23)">&#x2190;</a></div></td></td><td>Assuming the condition is true</td><td><div class="PathNav"><a href="#Path25" title="Next event (25)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path25" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">25</div></td><td><div class="PathNav"><a href="#Path24" title="Previous event (24)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path26" title="Next event (26)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="521"><td class="num" id="LN521">521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="522"><td class="num" id="LN522">522</td><td class="line"> isi-&gt;ypoints = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="523"><td class="num" id="LN523">523</td><td class="line"> isi-&gt;ypoints16 = dimgCalcYPoints16(<span class='keyword'>reinterpret_cast</span>&lt;ullong*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="524"><td class="num" id="LN524">524</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="525"><td class="num" id="LN525">525</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="526"><td class="num" id="LN526">526</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="527"><td class="num" id="LN527">527</td><td class="line"> isi-&gt;ypoints16 = <span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="528"><td class="num" id="LN528">528</td><td class="line"> isi-&gt;ypoints = dimgCalcYPoints(<span class='keyword'>reinterpret_cast</span>&lt;uint*&gt;(img.bits()), img.width(), img.height(), sch);</td></tr>
<tr class="codeline" data-linenumber="529"><td class="num" id="LN529">529</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="530"><td class="num" id="LN530">530</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="531"><td class="num" id="LN531">531</td><td class="line"> <span class='keyword'>if</span> (aa)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path26" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">26</div></td><td><div class="PathNav"><a href="#Path25" title="Previous event (25)">&#x2190;</a></div></td></td><td>Taking true branch</td><td><div class="PathNav"><a href="#Path27" title="Next event (27)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="532"><td class="num" id="LN532">532</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="533"><td class="num" id="LN533">533</td><td class="line"> isi-&gt;xapoints = dimgCalcApoints(img.width(), scw, isi-&gt;xup_yup &amp; 1);</td></tr>
<tr class="codeline" data-linenumber="534"><td class="num" id="LN534">534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="535"><td class="num" id="LN535">535</td><td class="line"> isi-&gt;yapoints = dimgCalcApoints(img.height(), sch, isi-&gt;xup_yup &amp; 2);</td></tr>
<tr class="codeline" data-linenumber="536"><td class="num" id="LN536">536</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="537"><td class="num" id="LN537">537</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="538"><td class="num" id="LN538">538</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="539"><td class="num" id="LN539">539</td><td class="line"> isi-&gt;xapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[scw];</td></tr>
<tr class="codeline" data-linenumber="540"><td class="num" id="LN540">540</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="541"><td class="num" id="LN541">541</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; scw; ++i)</td></tr>
<tr class="codeline" data-linenumber="542"><td class="num" id="LN542">542</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="543"><td class="num" id="LN543">543</td><td class="line"> isi-&gt;xapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="544"><td class="num" id="LN544">544</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="545"><td class="num" id="LN545">545</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="546"><td class="num" id="LN546">546</td><td class="line"> isi-&gt;yapoints = <span class='keyword'>new</span> <span class='keyword'>int</span>[sch];</td></tr>
<tr class="codeline" data-linenumber="547"><td class="num" id="LN547">547</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="548"><td class="num" id="LN548">548</td><td class="line"> <span class='keyword'>for</span> (<span class='keyword'>int</span> i = 0; i &lt; sch; ++i)</td></tr>
<tr class="codeline" data-linenumber="549"><td class="num" id="LN549">549</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="550"><td class="num" id="LN550">550</td><td class="line"> isi-&gt;yapoints[i] = 0;</td></tr>
<tr class="codeline" data-linenumber="551"><td class="num" id="LN551">551</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="552"><td class="num" id="LN552">552</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="553"><td class="num" id="LN553">553</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="554"><td class="num" id="LN554">554</td><td class="line"> <span class='keyword'>return</span> isi;</td></tr>
<tr class="codeline" data-linenumber="555"><td class="num" id="LN555">555</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="556"><td class="num" id="LN556">556</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="557"><td class="num" id="LN557">557</td><td class="line"><span class='comment'>/** scale by pixel sampling only */</span></td></tr>
<tr class="codeline" data-linenumber="558"><td class="num" id="LN558">558</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="559"><td class="num" id="LN559">559</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="560"><td class="num" id="LN560">560</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="561"><td class="num" id="LN561">561</td><td class="line"> dimgSampleRGBA(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="562"><td class="num" id="LN562">562</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="563"><td class="num" id="LN563">563</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="564"><td class="num" id="LN564">564</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="565"><td class="num" id="LN565">565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="566"><td class="num" id="LN566">566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="567"><td class="num" id="LN567">567</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="568"><td class="num" id="LN568">568</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="569"><td class="num" id="LN569">569</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="570"><td class="num" id="LN570">570</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="571"><td class="num" id="LN571">571</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="572"><td class="num" id="LN572">572</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="573"><td class="num" id="LN573">573</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="574"><td class="num" id="LN574">574</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="575"><td class="num" id="LN575">575</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="576"><td class="num" id="LN576">576</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="577"><td class="num" id="LN577">577</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="578"><td class="num" id="LN578">578</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="579"><td class="num" id="LN579">579</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="580"><td class="num" id="LN580">580</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="581"><td class="num" id="LN581">581</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="582"><td class="num" id="LN582">582</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="583"><td class="num" id="LN583">583</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="584"><td class="num" id="LN584">584</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="585"><td class="num" id="LN585">585</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="586"><td class="num" id="LN586">586</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="587"><td class="num" id="LN587">587</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="588"><td class="num" id="LN588">588</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="589"><td class="num" id="LN589">589</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="590"><td class="num" id="LN590">590</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="591"><td class="num" id="LN591">591</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="592"><td class="num" id="LN592">592</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="593"><td class="num" id="LN593">593</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="594"><td class="num" id="LN594">594</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="595"><td class="num" id="LN595">595</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="596"><td class="num" id="LN596">596</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="597"><td class="num" id="LN597">597</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="598"><td class="num" id="LN598">598</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="599"><td class="num" id="LN599">599</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow)</td></tr>
<tr class="codeline" data-linenumber="600"><td class="num" id="LN600">600</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="601"><td class="num" id="LN601">601</td><td class="line"> dimgSampleRGBA16(isi, dest, dxx, dyy, dw, dh, dow,</td></tr>
<tr class="codeline" data-linenumber="602"><td class="num" id="LN602">602</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="603"><td class="num" id="LN603">603</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="604"><td class="num" id="LN604">604</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="605"><td class="num" id="LN605">605</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgSampleRGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="606"><td class="num" id="LN606">606</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh, <span class='keyword'>int</span> dow,</td></tr>
<tr class="codeline" data-linenumber="607"><td class="num" id="LN607">607</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy, <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="608"><td class="num" id="LN608">608</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="609"><td class="num" id="LN609">609</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="610"><td class="num" id="LN610">610</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="611"><td class="num" id="LN611">611</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="612"><td class="num" id="LN612">612</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="613"><td class="num" id="LN613">613</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="614"><td class="num" id="LN614">614</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="615"><td class="num" id="LN615">615</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="616"><td class="num" id="LN616">616</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="617"><td class="num" id="LN617">617</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="618"><td class="num" id="LN618">618</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="619"><td class="num" id="LN619">619</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="620"><td class="num" id="LN620">620</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="621"><td class="num" id="LN621">621</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="622"><td class="num" id="LN622">622</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="623"><td class="num" id="LN623">623</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="624"><td class="num" id="LN624">624</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="625"><td class="num" id="LN625">625</td><td class="line"> <span class='comment'>/* get the pointer to the start of the destination scanline */</span></td></tr>
<tr class="codeline" data-linenumber="626"><td class="num" id="LN626">626</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="627"><td class="num" id="LN627">627</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="628"><td class="num" id="LN628">628</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="629"><td class="num" id="LN629">629</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="630"><td class="num" id="LN630">630</td><td class="line"> <span class='comment'>/* go through the scanline and copy across */</span></td></tr>
<tr class="codeline" data-linenumber="631"><td class="num" id="LN631">631</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="632"><td class="num" id="LN632">632</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="633"><td class="num" id="LN633">633</td><td class="line"> *dptr++ = sptr[xpoints[x]];</td></tr>
<tr class="codeline" data-linenumber="634"><td class="num" id="LN634">634</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="635"><td class="num" id="LN635">635</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="636"><td class="num" id="LN636">636</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="637"><td class="num" id="LN637">637</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="638"><td class="num" id="LN638">638</td><td class="line"><span class='comment'>/* FIXME: NEED to optimize ScaleAARGBA - currently its "ok" but needs work*/</span></td></tr>
<tr class="codeline" data-linenumber="639"><td class="num" id="LN639">639</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="640"><td class="num" id="LN640">640</td><td class="line"><span class='comment'>/**</span></td></tr>
<tr class="codeline" data-linenumber="641"><td class="num" id="LN641">641</td><td class="line"><span class='comment'>dimgScaleAARGBA : scale by area sampling. Arguments:</span></td></tr>
<tr class="codeline" data-linenumber="642"><td class="num" id="LN642">642</td><td class="line"> <span class='comment'>DImgScaleInfo* isi, // scaleinfo</span></td></tr>
<tr class="codeline" data-linenumber="643"><td class="num" id="LN643">643</td><td class="line"> <span class='comment'>uint* dest, // destination img data</span></td></tr>
<tr class="codeline" data-linenumber="644"><td class="num" id="LN644">644</td><td class="line"> <span class='comment'>int dxx, // destination x location corresponding to start x of src section</span></td></tr>
<tr class="codeline" data-linenumber="645"><td class="num" id="LN645">645</td><td class="line"> <span class='comment'>int dyy, // destination y location corresponding to start y of src section</span></td></tr>
<tr class="codeline" data-linenumber="646"><td class="num" id="LN646">646</td><td class="line"> <span class='comment'>int dw, // destination width</span></td></tr>
<tr class="codeline" data-linenumber="647"><td class="num" id="LN647">647</td><td class="line"> <span class='comment'>int dh, // destination height</span></td></tr>
<tr class="codeline" data-linenumber="648"><td class="num" id="LN648">648</td><td class="line"> <span class='comment'>int dow, // destination scanline width</span></td></tr>
<tr class="codeline" data-linenumber="649"><td class="num" id="LN649">649</td><td class="line"> <span class='comment'>int sow); // src scanline width</span></td></tr>
<tr class="codeline" data-linenumber="650"><td class="num" id="LN650">650</td><td class="line"><span class='comment'>*/</span></td></tr>
<tr class="codeline" data-linenumber="651"><td class="num" id="LN651">651</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="652"><td class="num" id="LN652">652</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="653"><td class="num" id="LN653">653</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="654"><td class="num" id="LN654">654</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="655"><td class="num" id="LN655">655</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="656"><td class="num" id="LN656">656</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="657"><td class="num" id="LN657">657</td><td class="line"> <span class="mrange">dimgScaleAARGBA(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr></span>
<tr><td class="num"></td><td class="line"><div id="Path33" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">33</div></td><td><div class="PathNav"><a href="#Path32" title="Previous event (32)">&#x2190;</a></div></td></td><td>Calling 'dimgScaleAARGBA'</td><td><div class="PathNav"><a href="#Path34" title="Next event (34)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="658"><td class="num" id="LN658">658</td><td class="line"> <span class="mrange">0, 0, dw, dh)</span>;</td></tr>
<tr class="codeline" data-linenumber="659"><td class="num" id="LN659">659</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="660"><td class="num" id="LN660">660</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="661"><td class="num" id="LN661">661</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="662"><td class="num" id="LN662">662</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="663"><td class="num" id="LN663">663</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="664"><td class="num" id="LN664">664</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="665"><td class="num" id="LN665">665</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="666"><td class="num" id="LN666">666</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="667"><td class="num" id="LN667">667</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="668"><td class="num" id="LN668">668</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="669"><td class="num" id="LN669">669</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="670"><td class="num" id="LN670">670</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="671"><td class="num" id="LN671">671</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="672"><td class="num" id="LN672">672</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="673"><td class="num" id="LN673">673</td><td class="line"> <span class="mrange">uint** ypoints</span> = isi-&gt;ypoints;</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path34" class="msg msgEvent" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">34</div></td><td><div class="PathNav"><a href="#Path33" title="Previous event (33)">&#x2190;</a></div></td></td><td>'ypoints' initialized to a null pointer value</td><td><div class="PathNav"><a href="#Path35" title="Next event (35)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="674"><td class="num" id="LN674">674</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="675"><td class="num" id="LN675">675</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="676"><td class="num" id="LN676">676</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="677"><td class="num" id="LN677">677</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="678"><td class="num" id="LN678">678</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="679"><td class="num" id="LN679">679</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="680"><td class="num" id="LN680">680</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="681"><td class="num" id="LN681">681</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="682"><td class="num" id="LN682">682</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="683"><td class="num" id="LN683">683</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="684"><td class="num" id="LN684">684</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path35" class="msg msgControl" style="margin-left:5ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">35</div></td><td><div class="PathNav"><a href="#Path34" title="Previous event (34)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path36" title="Next event (36)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="685"><td class="num" id="LN685">685</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="686"><td class="num" id="LN686">686</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="687"><td class="num" id="LN687">687</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="688"><td class="num" id="LN688">688</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="689"><td class="num" id="LN689">689</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="690"><td class="num" id="LN690">690</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="691"><td class="num" id="LN691">691</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="692"><td class="num" id="LN692">692</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="693"><td class="num" id="LN693">693</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="694"><td class="num" id="LN694">694</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="695"><td class="num" id="LN695">695</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="696"><td class="num" id="LN696">696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="697"><td class="num" id="LN697">697</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="698"><td class="num" id="LN698">698</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="699"><td class="num" id="LN699">699</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="700"><td class="num" id="LN700">700</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="701"><td class="num" id="LN701">701</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="702"><td class="num" id="LN702">702</td><td class="line"> <span class='keyword'>int</span> rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="703"><td class="num" id="LN703">703</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="704"><td class="num" id="LN704">704</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="705"><td class="num" id="LN705">705</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="706"><td class="num" id="LN706">706</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="707"><td class="num" id="LN707">707</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="708"><td class="num" id="LN708">708</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="709"><td class="num" id="LN709">709</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="710"><td class="num" id="LN710">710</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="711"><td class="num" id="LN711">711</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="712"><td class="num" id="LN712">712</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="713"><td class="num" id="LN713">713</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="714"><td class="num" id="LN714">714</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="715"><td class="num" id="LN715">715</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="716"><td class="num" id="LN716">716</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="717"><td class="num" id="LN717">717</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="718"><td class="num" id="LN718">718</td><td class="line"> aa = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="719"><td class="num" id="LN719">719</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="720"><td class="num" id="LN720">720</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="721"><td class="num" id="LN721">721</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="722"><td class="num" id="LN722">722</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="723"><td class="num" id="LN723">723</td><td class="line"> aa += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="724"><td class="num" id="LN724">724</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="725"><td class="num" id="LN725">725</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="726"><td class="num" id="LN726">726</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="727"><td class="num" id="LN727">727</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="728"><td class="num" id="LN728">728</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="729"><td class="num" id="LN729">729</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="730"><td class="num" id="LN730">730</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="731"><td class="num" id="LN731">731</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="732"><td class="num" id="LN732">732</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="733"><td class="num" id="LN733">733</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="734"><td class="num" id="LN734">734</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="735"><td class="num" id="LN735">735</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="736"><td class="num" id="LN736">736</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="737"><td class="num" id="LN737">737</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="738"><td class="num" id="LN738">738</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="739"><td class="num" id="LN739">739</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="740"><td class="num" id="LN740">740</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="741"><td class="num" id="LN741">741</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="742"><td class="num" id="LN742">742</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="743"><td class="num" id="LN743">743</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="744"><td class="num" id="LN744">744</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="745"><td class="num" id="LN745">745</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="746"><td class="num" id="LN746">746</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="747"><td class="num" id="LN747">747</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="748"><td class="num" id="LN748">748</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="749"><td class="num" id="LN749">749</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="750"><td class="num" id="LN750">750</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="751"><td class="num" id="LN751">751</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="752"><td class="num" id="LN752">752</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="753"><td class="num" id="LN753">753</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="754"><td class="num" id="LN754">754</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="755"><td class="num" id="LN755">755</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="756"><td class="num" id="LN756">756</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="757"><td class="num" id="LN757">757</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="758"><td class="num" id="LN758">758</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="759"><td class="num" id="LN759">759</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="760"><td class="num" id="LN760">760</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="761"><td class="num" id="LN761">761</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="762"><td class="num" id="LN762">762</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="763"><td class="num" id="LN763">763</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="764"><td class="num" id="LN764">764</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="765"><td class="num" id="LN765">765</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="766"><td class="num" id="LN766">766</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="767"><td class="num" id="LN767">767</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="768"><td class="num" id="LN768">768</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="769"><td class="num" id="LN769">769</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="770"><td class="num" id="LN770">770</td><td class="line"> <span class='keyword'>int</span> r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="771"><td class="num" id="LN771">771</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="772"><td class="num" id="LN772">772</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="773"><td class="num" id="LN773">773</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="774"><td class="num" id="LN774">774</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="775"><td class="num" id="LN775">775</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="776"><td class="num" id="LN776">776</td><td class="line"> a = <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="777"><td class="num" id="LN777">777</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="778"><td class="num" id="LN778">778</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="779"><td class="num" id="LN779">779</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="780"><td class="num" id="LN780">780</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="781"><td class="num" id="LN781">781</td><td class="line"> a += <span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="782"><td class="num" id="LN782">782</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="783"><td class="num" id="LN783">783</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="784"><td class="num" id="LN784">784</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="785"><td class="num" id="LN785">785</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="786"><td class="num" id="LN786">786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="787"><td class="num" id="LN787">787</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="788"><td class="num" id="LN788">788</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="789"><td class="num" id="LN789">789</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="790"><td class="num" id="LN790">790</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="791"><td class="num" id="LN791">791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="792"><td class="num" id="LN792">792</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="793"><td class="num" id="LN793">793</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="794"><td class="num" id="LN794">794</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="795"><td class="num" id="LN795">795</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="796"><td class="num" id="LN796">796</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="797"><td class="num" id="LN797">797</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="798"><td class="num" id="LN798">798</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="799"><td class="num" id="LN799">799</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="800"><td class="num" id="LN800">800</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="801"><td class="num" id="LN801">801</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="802"><td class="num" id="LN802">802</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="803"><td class="num" id="LN803">803</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path36" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">36</div></td><td><div class="PathNav"><a href="#Path35" title="Previous event (35)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path37" title="Next event (37)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="804"><td class="num" id="LN804">804</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="805"><td class="num" id="LN805">805</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="806"><td class="num" id="LN806">806</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="807"><td class="num" id="LN807">807</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="808"><td class="num" id="LN808">808</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="809"><td class="num" id="LN809">809</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="810"><td class="num" id="LN810">810</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="811"><td class="num" id="LN811">811</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="812"><td class="num" id="LN812">812</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="813"><td class="num" id="LN813">813</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="814"><td class="num" id="LN814">814</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="815"><td class="num" id="LN815">815</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="816"><td class="num" id="LN816">816</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="817"><td class="num" id="LN817">817</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="818"><td class="num" id="LN818">818</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="819"><td class="num" id="LN819">819</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="820"><td class="num" id="LN820">820</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="821"><td class="num" id="LN821">821</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="822"><td class="num" id="LN822">822</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="823"><td class="num" id="LN823">823</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="824"><td class="num" id="LN824">824</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="825"><td class="num" id="LN825">825</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="826"><td class="num" id="LN826">826</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="827"><td class="num" id="LN827">827</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="828"><td class="num" id="LN828">828</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="829"><td class="num" id="LN829">829</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="830"><td class="num" id="LN830">830</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="831"><td class="num" id="LN831">831</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="832"><td class="num" id="LN832">832</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="833"><td class="num" id="LN833">833</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="834"><td class="num" id="LN834">834</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="835"><td class="num" id="LN835">835</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="836"><td class="num" id="LN836">836</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="837"><td class="num" id="LN837">837</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="838"><td class="num" id="LN838">838</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="839"><td class="num" id="LN839">839</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="840"><td class="num" id="LN840">840</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="841"><td class="num" id="LN841">841</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="842"><td class="num" id="LN842">842</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="843"><td class="num" id="LN843">843</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="844"><td class="num" id="LN844">844</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="845"><td class="num" id="LN845">845</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="846"><td class="num" id="LN846">846</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="847"><td class="num" id="LN847">847</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="848"><td class="num" id="LN848">848</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="849"><td class="num" id="LN849">849</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="850"><td class="num" id="LN850">850</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="851"><td class="num" id="LN851">851</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="852"><td class="num" id="LN852">852</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="853"><td class="num" id="LN853">853</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="854"><td class="num" id="LN854">854</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="855"><td class="num" id="LN855">855</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="856"><td class="num" id="LN856">856</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="857"><td class="num" id="LN857">857</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="858"><td class="num" id="LN858">858</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="859"><td class="num" id="LN859">859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="860"><td class="num" id="LN860">860</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="861"><td class="num" id="LN861">861</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="862"><td class="num" id="LN862">862</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="863"><td class="num" id="LN863">863</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="864"><td class="num" id="LN864">864</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="865"><td class="num" id="LN865">865</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="866"><td class="num" id="LN866">866</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="867"><td class="num" id="LN867">867</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="868"><td class="num" id="LN868">868</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="869"><td class="num" id="LN869">869</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="870"><td class="num" id="LN870">870</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="871"><td class="num" id="LN871">871</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="872"><td class="num" id="LN872">872</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="873"><td class="num" id="LN873">873</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="874"><td class="num" id="LN874">874</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="875"><td class="num" id="LN875">875</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="876"><td class="num" id="LN876">876</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="877"><td class="num" id="LN877">877</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="878"><td class="num" id="LN878">878</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="879"><td class="num" id="LN879">879</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="880"><td class="num" id="LN880">880</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="881"><td class="num" id="LN881">881</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="882"><td class="num" id="LN882">882</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="883"><td class="num" id="LN883">883</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="884"><td class="num" id="LN884">884</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="885"><td class="num" id="LN885">885</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="886"><td class="num" id="LN886">886</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="887"><td class="num" id="LN887">887</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="888"><td class="num" id="LN888">888</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="889"><td class="num" id="LN889">889</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="890"><td class="num" id="LN890">890</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="891"><td class="num" id="LN891">891</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="892"><td class="num" id="LN892">892</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="893"><td class="num" id="LN893">893</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="894"><td class="num" id="LN894">894</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="895"><td class="num" id="LN895">895</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="896"><td class="num" id="LN896">896</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="897"><td class="num" id="LN897">897</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path37" class="msg msgControl" style="margin-left:10ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">37</div></td><td><div class="PathNav"><a href="#Path36" title="Previous event (36)">&#x2190;</a></div></td></td><td>Taking false branch</td><td><div class="PathNav"><a href="#Path38" title="Next event (38)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="898"><td class="num" id="LN898">898</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="899"><td class="num" id="LN899">899</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="900"><td class="num" id="LN900">900</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="901"><td class="num" id="LN901">901</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="902"><td class="num" id="LN902">902</td><td class="line"> <span class='keyword'>int</span> r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="903"><td class="num" id="LN903">903</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="904"><td class="num" id="LN904">904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="905"><td class="num" id="LN905">905</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="906"><td class="num" id="LN906">906</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="907"><td class="num" id="LN907">907</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="908"><td class="num" id="LN908">908</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="909"><td class="num" id="LN909">909</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="910"><td class="num" id="LN910">910</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="911"><td class="num" id="LN911">911</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="912"><td class="num" id="LN912">912</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="913"><td class="num" id="LN913">913</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="914"><td class="num" id="LN914">914</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="915"><td class="num" id="LN915">915</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="916"><td class="num" id="LN916">916</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="917"><td class="num" id="LN917">917</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="918"><td class="num" id="LN918">918</td><td class="line"> a = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="919"><td class="num" id="LN919">919</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="920"><td class="num" id="LN920">920</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="921"><td class="num" id="LN921">921</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="922"><td class="num" id="LN922">922</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="923"><td class="num" id="LN923">923</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="924"><td class="num" id="LN924">924</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="925"><td class="num" id="LN925">925</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="926"><td class="num" id="LN926">926</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="927"><td class="num" id="LN927">927</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="928"><td class="num" id="LN928">928</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="929"><td class="num" id="LN929">929</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="930"><td class="num" id="LN930">930</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="931"><td class="num" id="LN931">931</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="932"><td class="num" id="LN932">932</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="933"><td class="num" id="LN933">933</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="934"><td class="num" id="LN934">934</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="935"><td class="num" id="LN935">935</td><td class="line"> a += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="936"><td class="num" id="LN936">936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="937"><td class="num" id="LN937">937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="938"><td class="num" id="LN938">938</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="939"><td class="num" id="LN939">939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="940"><td class="num" id="LN940">940</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="941"><td class="num" id="LN941">941</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="942"><td class="num" id="LN942">942</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="943"><td class="num" id="LN943">943</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="944"><td class="num" id="LN944">944</td><td class="line"> aa = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="945"><td class="num" id="LN945">945</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="946"><td class="num" id="LN946">946</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="947"><td class="num" id="LN947">947</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="948"><td class="num" id="LN948">948</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="949"><td class="num" id="LN949">949</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="950"><td class="num" id="LN950">950</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="951"><td class="num" id="LN951">951</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="952"><td class="num" id="LN952">952</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="953"><td class="num" id="LN953">953</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="954"><td class="num" id="LN954">954</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="955"><td class="num" id="LN955">955</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="956"><td class="num" id="LN956">956</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="957"><td class="num" id="LN957">957</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="958"><td class="num" id="LN958">958</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="959"><td class="num" id="LN959">959</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="960"><td class="num" id="LN960">960</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="961"><td class="num" id="LN961">961</td><td class="line"> aa += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="962"><td class="num" id="LN962">962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="963"><td class="num" id="LN963">963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="964"><td class="num" id="LN964">964</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="965"><td class="num" id="LN965">965</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="966"><td class="num" id="LN966">966</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="967"><td class="num" id="LN967">967</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="968"><td class="num" id="LN968">968</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="969"><td class="num" id="LN969">969</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="970"><td class="num" id="LN970">970</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="971"><td class="num" id="LN971">971</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="972"><td class="num" id="LN972">972</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="973"><td class="num" id="LN973">973</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="974"><td class="num" id="LN974">974</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="975"><td class="num" id="LN975">975</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="976"><td class="num" id="LN976">976</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="977"><td class="num" id="LN977">977</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="978"><td class="num" id="LN978">978</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="979"><td class="num" id="LN979">979</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="980"><td class="num" id="LN980">980</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="981"><td class="num" id="LN981">981</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="982"><td class="num" id="LN982">982</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="983"><td class="num" id="LN983">983</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="984"><td class="num" id="LN984">984</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="985"><td class="num" id="LN985">985</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="986"><td class="num" id="LN986">986</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="987"><td class="num" id="LN987">987</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="988"><td class="num" id="LN988">988</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="989"><td class="num" id="LN989">989</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="990"><td class="num" id="LN990">990</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="991"><td class="num" id="LN991">991</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="992"><td class="num" id="LN992">992</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="993"><td class="num" id="LN993">993</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="994"><td class="num" id="LN994">994</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="995"><td class="num" id="LN995">995</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="996"><td class="num" id="LN996">996</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="997"><td class="num" id="LN997">997</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="998"><td class="num" id="LN998">998</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="999"><td class="num" id="LN999">999</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1000"><td class="num" id="LN1000">1000</td><td class="line"> <span class='keyword'>int</span> a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1001"><td class="num" id="LN1001">1001</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1002"><td class="num" id="LN1002">1002</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1003"><td class="num" id="LN1003">1003</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path38" class="msg msgControl" style="margin-left:9ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">38</div></td><td><div class="PathNav"><a href="#Path37" title="Previous event (37)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#Path39" title="Next event (39)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1004"><td class="num" id="LN1004">1004</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1005"><td class="num" id="LN1005">1005</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1006"><td class="num" id="LN1006">1006</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1007"><td class="num" id="LN1007">1007</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1008"><td class="num" id="LN1008">1008</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1009"><td class="num" id="LN1009">1009</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; <span class="mrange">x &lt; x_end</span>; ++x)</td></tr>
<tr><td class="num"></td><td class="line"><div id="Path39" class="msg msgEvent" style="margin-left:31ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">39</div></td><td><div class="PathNav"><a href="#Path38" title="Previous event (38)">&#x2190;</a></div></td></td><td>Assuming 'x' is &lt; 'x_end'</td><td><div class="PathNav"><a href="#Path40" title="Next event (40)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr><td class="num"></td><td class="line"><div id="Path40" class="msg msgControl" style="margin-left:13ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexControl">40</div></td><td><div class="PathNav"><a href="#Path39" title="Previous event (39)">&#x2190;</a></div></td></td><td>Loop condition is true. Entering loop body</td><td><div class="PathNav"><a href="#EndPath" title="Next event (41)">&#x2192;</a></div></td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1010"><td class="num" id="LN1010">1010</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1011"><td class="num" id="LN1011">1011</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1012"><td class="num" id="LN1012">1012</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1013"><td class="num" id="LN1013">1013</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1014"><td class="num" id="LN1014">1014</td><td class="line"> sptr = <span class="mrange">ypoints</span>[dyy + y] + xpoints[x];</td></tr>
<tr><td class="num"></td><td class="line"><div id="EndPath" class="msg msgEvent" style="margin-left:24ex"><table class="msgT"><tr><td valign="top"><div class="PathIndex PathIndexEvent">41</div></td><td><div class="PathNav"><a href="#Path40" title="Previous event (40)">&#x2190;</a></div></td></td><td>Array access (from variable 'ypoints') results in a null pointer dereference</td></tr></table></div></td></tr>
<tr class="codeline" data-linenumber="1015"><td class="num" id="LN1015">1015</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1016"><td class="num" id="LN1016">1016</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1017"><td class="num" id="LN1017">1017</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1018"><td class="num" id="LN1018">1018</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1019"><td class="num" id="LN1019">1019</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1020"><td class="num" id="LN1020">1020</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1021"><td class="num" id="LN1021">1021</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1022"><td class="num" id="LN1022">1022</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1023"><td class="num" id="LN1023">1023</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1024"><td class="num" id="LN1024">1024</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1025"><td class="num" id="LN1025">1025</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1026"><td class="num" id="LN1026">1026</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1027"><td class="num" id="LN1027">1027</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1028"><td class="num" id="LN1028">1028</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1029"><td class="num" id="LN1029">1029</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1030"><td class="num" id="LN1030">1030</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1031"><td class="num" id="LN1031">1031</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1032"><td class="num" id="LN1032">1032</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1033"><td class="num" id="LN1033">1033</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1034"><td class="num" id="LN1034">1034</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1035"><td class="num" id="LN1035">1035</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1036"><td class="num" id="LN1036">1036</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1037"><td class="num" id="LN1037">1037</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1038"><td class="num" id="LN1038">1038</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1039"><td class="num" id="LN1039">1039</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1040"><td class="num" id="LN1040">1040</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1041"><td class="num" id="LN1041">1041</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1042"><td class="num" id="LN1042">1042</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1043"><td class="num" id="LN1043">1043</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1044"><td class="num" id="LN1044">1044</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1045"><td class="num" id="LN1045">1045</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1046"><td class="num" id="LN1046">1046</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1047"><td class="num" id="LN1047">1047</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1048"><td class="num" id="LN1048">1048</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1049"><td class="num" id="LN1049">1049</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1050"><td class="num" id="LN1050">1050</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1051"><td class="num" id="LN1051">1051</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1052"><td class="num" id="LN1052">1052</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1053"><td class="num" id="LN1053">1053</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1054"><td class="num" id="LN1054">1054</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1055"><td class="num" id="LN1055">1055</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1056"><td class="num" id="LN1056">1056</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1057"><td class="num" id="LN1057">1057</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1058"><td class="num" id="LN1058">1058</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1059"><td class="num" id="LN1059">1059</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1060"><td class="num" id="LN1060">1060</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1061"><td class="num" id="LN1061">1061</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1062"><td class="num" id="LN1062">1062</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1063"><td class="num" id="LN1063">1063</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1064"><td class="num" id="LN1064">1064</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1065"><td class="num" id="LN1065">1065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1066"><td class="num" id="LN1066">1066</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1067"><td class="num" id="LN1067">1067</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1068"><td class="num" id="LN1068">1068</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1069"><td class="num" id="LN1069">1069</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1070"><td class="num" id="LN1070">1070</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1071"><td class="num" id="LN1071">1071</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1072"><td class="num" id="LN1072">1072</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1073"><td class="num" id="LN1073">1073</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1074"><td class="num" id="LN1074">1074</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1075"><td class="num" id="LN1075">1075</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1076"><td class="num" id="LN1076">1076</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1077"><td class="num" id="LN1077">1077</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1078"><td class="num" id="LN1078">1078</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1079"><td class="num" id="LN1079">1079</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1080"><td class="num" id="LN1080">1080</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1081"><td class="num" id="LN1081">1081</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1082"><td class="num" id="LN1082">1082</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1083"><td class="num" id="LN1083">1083</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1084"><td class="num" id="LN1084">1084</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1085"><td class="num" id="LN1085">1085</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1086"><td class="num" id="LN1086">1086</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1087"><td class="num" id="LN1087">1087</td><td class="line"> ax = (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1088"><td class="num" id="LN1088">1088</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1089"><td class="num" id="LN1089">1089</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1090"><td class="num" id="LN1090">1090</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1091"><td class="num" id="LN1091">1091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1092"><td class="num" id="LN1092">1092</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1093"><td class="num" id="LN1093">1093</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1094"><td class="num" id="LN1094">1094</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1095"><td class="num" id="LN1095">1095</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1096"><td class="num" id="LN1096">1096</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1097"><td class="num" id="LN1097">1097</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1098"><td class="num" id="LN1098">1098</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1099"><td class="num" id="LN1099">1099</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1100"><td class="num" id="LN1100">1100</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1101"><td class="num" id="LN1101">1101</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1102"><td class="num" id="LN1102">1102</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1103"><td class="num" id="LN1103">1103</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1104"><td class="num" id="LN1104">1104</td><td class="line"> ax += (<span class='macro'>A_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1105"><td class="num" id="LN1105">1105</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1106"><td class="num" id="LN1106">1106</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1107"><td class="num" id="LN1107">1107</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1108"><td class="num" id="LN1108">1108</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1109"><td class="num" id="LN1109">1109</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1110"><td class="num" id="LN1110">1110</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1111"><td class="num" id="LN1111">1111</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1112"><td class="num" id="LN1112">1112</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1113"><td class="num" id="LN1113">1113</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1114"><td class="num" id="LN1114">1114</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1115"><td class="num" id="LN1115">1115</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1116"><td class="num" id="LN1116">1116</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1117"><td class="num" id="LN1117">1117</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1118"><td class="num" id="LN1118">1118</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1119"><td class="num" id="LN1119">1119</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1120"><td class="num" id="LN1120">1120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1121"><td class="num" id="LN1121">1121</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1122"><td class="num" id="LN1122">1122</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1123"><td class="num" id="LN1123">1123</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1124"><td class="num" id="LN1124">1124</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1125"><td class="num" id="LN1125">1125</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1126"><td class="num" id="LN1126">1126</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1127"><td class="num" id="LN1127">1127</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1128"><td class="num" id="LN1128">1128</td><td class="line"> dimgScaleAARGB(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1129"><td class="num" id="LN1129">1129</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1130"><td class="num" id="LN1130">1130</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1131"><td class="num" id="LN1131">1131</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1132"><td class="num" id="LN1132">1132</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte */</span></td></tr>
<tr class="codeline" data-linenumber="1133"><td class="num" id="LN1133">1133</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB(DImgScaleInfo* <span class='keyword'>const</span> isi, uint* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1134"><td class="num" id="LN1134">1134</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1135"><td class="num" id="LN1135">1135</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1136"><td class="num" id="LN1136">1136</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1137"><td class="num" id="LN1137">1137</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1138"><td class="num" id="LN1138">1138</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1139"><td class="num" id="LN1139">1139</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1140"><td class="num" id="LN1140">1140</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1141"><td class="num" id="LN1141">1141</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1142"><td class="num" id="LN1142">1142</td><td class="line"> uint* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1143"><td class="num" id="LN1143">1143</td><td class="line"> uint* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1144"><td class="num" id="LN1144">1144</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1145"><td class="num" id="LN1145">1145</td><td class="line"> uint** ypoints = isi-&gt;ypoints;</td></tr>
<tr class="codeline" data-linenumber="1146"><td class="num" id="LN1146">1146</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1147"><td class="num" id="LN1147">1147</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1148"><td class="num" id="LN1148">1148</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1149"><td class="num" id="LN1149">1149</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1150"><td class="num" id="LN1150">1150</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1151"><td class="num" id="LN1151">1151</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1152"><td class="num" id="LN1152">1152</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1153"><td class="num" id="LN1153">1153</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1154"><td class="num" id="LN1154">1154</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1155"><td class="num" id="LN1155">1155</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="1156"><td class="num" id="LN1156">1156</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="1157"><td class="num" id="LN1157">1157</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1158"><td class="num" id="LN1158">1158</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1159"><td class="num" id="LN1159">1159</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1160"><td class="num" id="LN1160">1160</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1161"><td class="num" id="LN1161">1161</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="1162"><td class="num" id="LN1162">1162</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1163"><td class="num" id="LN1163">1163</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1164"><td class="num" id="LN1164">1164</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1165"><td class="num" id="LN1165">1165</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1166"><td class="num" id="LN1166">1166</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1167"><td class="num" id="LN1167">1167</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1168"><td class="num" id="LN1168">1168</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1169"><td class="num" id="LN1169">1169</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1170"><td class="num" id="LN1170">1170</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1171"><td class="num" id="LN1171">1171</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1172"><td class="num" id="LN1172">1172</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1173"><td class="num" id="LN1173">1173</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1174"><td class="num" id="LN1174">1174</td><td class="line"> <span class='keyword'>int</span> rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1175"><td class="num" id="LN1175">1175</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1176"><td class="num" id="LN1176">1176</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1177"><td class="num" id="LN1177">1177</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1178"><td class="num" id="LN1178">1178</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1179"><td class="num" id="LN1179">1179</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1180"><td class="num" id="LN1180">1180</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1181"><td class="num" id="LN1181">1181</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1182"><td class="num" id="LN1182">1182</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1183"><td class="num" id="LN1183">1183</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1184"><td class="num" id="LN1184">1184</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1185"><td class="num" id="LN1185">1185</td><td class="line"> rr = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1186"><td class="num" id="LN1186">1186</td><td class="line"> gg = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1187"><td class="num" id="LN1187">1187</td><td class="line"> bb = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1188"><td class="num" id="LN1188">1188</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1189"><td class="num" id="LN1189">1189</td><td class="line"> rr += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1190"><td class="num" id="LN1190">1190</td><td class="line"> gg += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1191"><td class="num" id="LN1191">1191</td><td class="line"> bb += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1192"><td class="num" id="LN1192">1192</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1193"><td class="num" id="LN1193">1193</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1194"><td class="num" id="LN1194">1194</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1195"><td class="num" id="LN1195">1195</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1196"><td class="num" id="LN1196">1196</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1197"><td class="num" id="LN1197">1197</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1198"><td class="num" id="LN1198">1198</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1199"><td class="num" id="LN1199">1199</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1200"><td class="num" id="LN1200">1200</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1201"><td class="num" id="LN1201">1201</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1202"><td class="num" id="LN1202">1202</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1203"><td class="num" id="LN1203">1203</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1204"><td class="num" id="LN1204">1204</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1205"><td class="num" id="LN1205">1205</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1206"><td class="num" id="LN1206">1206</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1207"><td class="num" id="LN1207">1207</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1208"><td class="num" id="LN1208">1208</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1209"><td class="num" id="LN1209">1209</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1210"><td class="num" id="LN1210">1210</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1211"><td class="num" id="LN1211">1211</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1212"><td class="num" id="LN1212">1212</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1213"><td class="num" id="LN1213">1213</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1214"><td class="num" id="LN1214">1214</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1215"><td class="num" id="LN1215">1215</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1216"><td class="num" id="LN1216">1216</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1217"><td class="num" id="LN1217">1217</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1218"><td class="num" id="LN1218">1218</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1219"><td class="num" id="LN1219">1219</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1220"><td class="num" id="LN1220">1220</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1221"><td class="num" id="LN1221">1221</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1222"><td class="num" id="LN1222">1222</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1223"><td class="num" id="LN1223">1223</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1224"><td class="num" id="LN1224">1224</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1225"><td class="num" id="LN1225">1225</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1226"><td class="num" id="LN1226">1226</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1227"><td class="num" id="LN1227">1227</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1228"><td class="num" id="LN1228">1228</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1229"><td class="num" id="LN1229">1229</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1230"><td class="num" id="LN1230">1230</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1231"><td class="num" id="LN1231">1231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1232"><td class="num" id="LN1232">1232</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1233"><td class="num" id="LN1233">1233</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1234"><td class="num" id="LN1234">1234</td><td class="line"> <span class='keyword'>int</span> r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1235"><td class="num" id="LN1235">1235</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1236"><td class="num" id="LN1236">1236</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1237"><td class="num" id="LN1237">1237</td><td class="line"> r = <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1238"><td class="num" id="LN1238">1238</td><td class="line"> g = <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1239"><td class="num" id="LN1239">1239</td><td class="line"> b = <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1240"><td class="num" id="LN1240">1240</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1241"><td class="num" id="LN1241">1241</td><td class="line"> r += <span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1242"><td class="num" id="LN1242">1242</td><td class="line"> g += <span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1243"><td class="num" id="LN1243">1243</td><td class="line"> b += <span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1244"><td class="num" id="LN1244">1244</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1245"><td class="num" id="LN1245">1245</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1246"><td class="num" id="LN1246">1246</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1247"><td class="num" id="LN1247">1247</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1248"><td class="num" id="LN1248">1248</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1249"><td class="num" id="LN1249">1249</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1250"><td class="num" id="LN1250">1250</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1251"><td class="num" id="LN1251">1251</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1252"><td class="num" id="LN1252">1252</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1253"><td class="num" id="LN1253">1253</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1254"><td class="num" id="LN1254">1254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1255"><td class="num" id="LN1255">1255</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1256"><td class="num" id="LN1256">1256</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1257"><td class="num" id="LN1257">1257</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1258"><td class="num" id="LN1258">1258</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1259"><td class="num" id="LN1259">1259</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1260"><td class="num" id="LN1260">1260</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1261"><td class="num" id="LN1261">1261</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1262"><td class="num" id="LN1262">1262</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1263"><td class="num" id="LN1263">1263</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1264"><td class="num" id="LN1264">1264</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="1265"><td class="num" id="LN1265">1265</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1266"><td class="num" id="LN1266">1266</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1267"><td class="num" id="LN1267">1267</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1268"><td class="num" id="LN1268">1268</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1269"><td class="num" id="LN1269">1269</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1270"><td class="num" id="LN1270">1270</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1271"><td class="num" id="LN1271">1271</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1272"><td class="num" id="LN1272">1272</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1273"><td class="num" id="LN1273">1273</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1274"><td class="num" id="LN1274">1274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1275"><td class="num" id="LN1275">1275</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1276"><td class="num" id="LN1276">1276</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1277"><td class="num" id="LN1277">1277</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1278"><td class="num" id="LN1278">1278</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1279"><td class="num" id="LN1279">1279</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1280"><td class="num" id="LN1280">1280</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1281"><td class="num" id="LN1281">1281</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1282"><td class="num" id="LN1282">1282</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1283"><td class="num" id="LN1283">1283</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1284"><td class="num" id="LN1284">1284</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1285"><td class="num" id="LN1285">1285</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1286"><td class="num" id="LN1286">1286</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1287"><td class="num" id="LN1287">1287</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1288"><td class="num" id="LN1288">1288</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1289"><td class="num" id="LN1289">1289</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1290"><td class="num" id="LN1290">1290</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1291"><td class="num" id="LN1291">1291</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1292"><td class="num" id="LN1292">1292</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1293"><td class="num" id="LN1293">1293</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1294"><td class="num" id="LN1294">1294</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1295"><td class="num" id="LN1295">1295</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1296"><td class="num" id="LN1296">1296</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1297"><td class="num" id="LN1297">1297</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1298"><td class="num" id="LN1298">1298</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1299"><td class="num" id="LN1299">1299</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1300"><td class="num" id="LN1300">1300</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1301"><td class="num" id="LN1301">1301</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1302"><td class="num" id="LN1302">1302</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1303"><td class="num" id="LN1303">1303</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1304"><td class="num" id="LN1304">1304</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1305"><td class="num" id="LN1305">1305</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1306"><td class="num" id="LN1306">1306</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1307"><td class="num" id="LN1307">1307</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1308"><td class="num" id="LN1308">1308</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1309"><td class="num" id="LN1309">1309</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1310"><td class="num" id="LN1310">1310</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1311"><td class="num" id="LN1311">1311</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1312"><td class="num" id="LN1312">1312</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1313"><td class="num" id="LN1313">1313</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1314"><td class="num" id="LN1314">1314</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1315"><td class="num" id="LN1315">1315</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1316"><td class="num" id="LN1316">1316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1317"><td class="num" id="LN1317">1317</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1318"><td class="num" id="LN1318">1318</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1319"><td class="num" id="LN1319">1319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1320"><td class="num" id="LN1320">1320</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1321"><td class="num" id="LN1321">1321</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1322"><td class="num" id="LN1322">1322</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1323"><td class="num" id="LN1323">1323</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1324"><td class="num" id="LN1324">1324</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1325"><td class="num" id="LN1325">1325</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1326"><td class="num" id="LN1326">1326</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1327"><td class="num" id="LN1327">1327</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1328"><td class="num" id="LN1328">1328</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1329"><td class="num" id="LN1329">1329</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1330"><td class="num" id="LN1330">1330</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1331"><td class="num" id="LN1331">1331</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1332"><td class="num" id="LN1332">1332</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1333"><td class="num" id="LN1333">1333</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1334"><td class="num" id="LN1334">1334</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1335"><td class="num" id="LN1335">1335</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1336"><td class="num" id="LN1336">1336</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1337"><td class="num" id="LN1337">1337</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1338"><td class="num" id="LN1338">1338</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1339"><td class="num" id="LN1339">1339</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1340"><td class="num" id="LN1340">1340</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1341"><td class="num" id="LN1341">1341</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1342"><td class="num" id="LN1342">1342</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1343"><td class="num" id="LN1343">1343</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1344"><td class="num" id="LN1344">1344</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1345"><td class="num" id="LN1345">1345</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1346"><td class="num" id="LN1346">1346</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1347"><td class="num" id="LN1347">1347</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1348"><td class="num" id="LN1348">1348</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="1349"><td class="num" id="LN1349">1349</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="1350"><td class="num" id="LN1350">1350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1351"><td class="num" id="LN1351">1351</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1352"><td class="num" id="LN1352">1352</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1353"><td class="num" id="LN1353">1353</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1354"><td class="num" id="LN1354">1354</td><td class="line"> <span class='keyword'>int</span> r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1355"><td class="num" id="LN1355">1355</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1356"><td class="num" id="LN1356">1356</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1357"><td class="num" id="LN1357">1357</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="1358"><td class="num" id="LN1358">1358</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1359"><td class="num" id="LN1359">1359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1360"><td class="num" id="LN1360">1360</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1361"><td class="num" id="LN1361">1361</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1362"><td class="num" id="LN1362">1362</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1363"><td class="num" id="LN1363">1363</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1364"><td class="num" id="LN1364">1364</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1365"><td class="num" id="LN1365">1365</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1366"><td class="num" id="LN1366">1366</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1367"><td class="num" id="LN1367">1367</td><td class="line"> r = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1368"><td class="num" id="LN1368">1368</td><td class="line"> g = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1369"><td class="num" id="LN1369">1369</td><td class="line"> b = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1370"><td class="num" id="LN1370">1370</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1371"><td class="num" id="LN1371">1371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1372"><td class="num" id="LN1372">1372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1373"><td class="num" id="LN1373">1373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1374"><td class="num" id="LN1374">1374</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1375"><td class="num" id="LN1375">1375</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1376"><td class="num" id="LN1376">1376</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1377"><td class="num" id="LN1377">1377</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1378"><td class="num" id="LN1378">1378</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1379"><td class="num" id="LN1379">1379</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1380"><td class="num" id="LN1380">1380</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1381"><td class="num" id="LN1381">1381</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1382"><td class="num" id="LN1382">1382</td><td class="line"> r += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1383"><td class="num" id="LN1383">1383</td><td class="line"> g += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1384"><td class="num" id="LN1384">1384</td><td class="line"> b += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1385"><td class="num" id="LN1385">1385</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1386"><td class="num" id="LN1386">1386</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1387"><td class="num" id="LN1387">1387</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1388"><td class="num" id="LN1388">1388</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1389"><td class="num" id="LN1389">1389</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1390"><td class="num" id="LN1390">1390</td><td class="line"> rr = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1391"><td class="num" id="LN1391">1391</td><td class="line"> gg = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1392"><td class="num" id="LN1392">1392</td><td class="line"> bb = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1393"><td class="num" id="LN1393">1393</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1394"><td class="num" id="LN1394">1394</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1395"><td class="num" id="LN1395">1395</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1396"><td class="num" id="LN1396">1396</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1397"><td class="num" id="LN1397">1397</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1398"><td class="num" id="LN1398">1398</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1399"><td class="num" id="LN1399">1399</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1400"><td class="num" id="LN1400">1400</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1401"><td class="num" id="LN1401">1401</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1402"><td class="num" id="LN1402">1402</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1403"><td class="num" id="LN1403">1403</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1404"><td class="num" id="LN1404">1404</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1405"><td class="num" id="LN1405">1405</td><td class="line"> rr += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1406"><td class="num" id="LN1406">1406</td><td class="line"> gg += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1407"><td class="num" id="LN1407">1407</td><td class="line"> bb += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1408"><td class="num" id="LN1408">1408</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1409"><td class="num" id="LN1409">1409</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1410"><td class="num" id="LN1410">1410</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1411"><td class="num" id="LN1411">1411</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1412"><td class="num" id="LN1412">1412</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1413"><td class="num" id="LN1413">1413</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1414"><td class="num" id="LN1414">1414</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1415"><td class="num" id="LN1415">1415</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1416"><td class="num" id="LN1416">1416</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1417"><td class="num" id="LN1417">1417</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1418"><td class="num" id="LN1418">1418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1419"><td class="num" id="LN1419">1419</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1420"><td class="num" id="LN1420">1420</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1421"><td class="num" id="LN1421">1421</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1422"><td class="num" id="LN1422">1422</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1423"><td class="num" id="LN1423">1423</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1424"><td class="num" id="LN1424">1424</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1425"><td class="num" id="LN1425">1425</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1426"><td class="num" id="LN1426">1426</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1427"><td class="num" id="LN1427">1427</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1428"><td class="num" id="LN1428">1428</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1429"><td class="num" id="LN1429">1429</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1430"><td class="num" id="LN1430">1430</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1431"><td class="num" id="LN1431">1431</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1432"><td class="num" id="LN1432">1432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1433"><td class="num" id="LN1433">1433</td><td class="line"> <span class='comment'>/* fully optimized (i think) - only change of algorithm can help */</span></td></tr>
<tr class="codeline" data-linenumber="1434"><td class="num" id="LN1434">1434</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="1435"><td class="num" id="LN1435">1435</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1436"><td class="num" id="LN1436">1436</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1437"><td class="num" id="LN1437">1437</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="1438"><td class="num" id="LN1438">1438</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1439"><td class="num" id="LN1439">1439</td><td class="line"> uint* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1440"><td class="num" id="LN1440">1440</td><td class="line"> <span class='keyword'>int</span> r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1441"><td class="num" id="LN1441">1441</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1442"><td class="num" id="LN1442">1442</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1443"><td class="num" id="LN1443">1443</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1444"><td class="num" id="LN1444">1444</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1445"><td class="num" id="LN1445">1445</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1446"><td class="num" id="LN1446">1446</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1447"><td class="num" id="LN1447">1447</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1448"><td class="num" id="LN1448">1448</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1449"><td class="num" id="LN1449">1449</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1450"><td class="num" id="LN1450">1450</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1451"><td class="num" id="LN1451">1451</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1452"><td class="num" id="LN1452">1452</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1453"><td class="num" id="LN1453">1453</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1454"><td class="num" id="LN1454">1454</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1455"><td class="num" id="LN1455">1455</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1456"><td class="num" id="LN1456">1456</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1457"><td class="num" id="LN1457">1457</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1458"><td class="num" id="LN1458">1458</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1459"><td class="num" id="LN1459">1459</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1460"><td class="num" id="LN1460">1460</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1461"><td class="num" id="LN1461">1461</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1462"><td class="num" id="LN1462">1462</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1463"><td class="num" id="LN1463">1463</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1464"><td class="num" id="LN1464">1464</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1465"><td class="num" id="LN1465">1465</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1466"><td class="num" id="LN1466">1466</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1467"><td class="num" id="LN1467">1467</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1468"><td class="num" id="LN1468">1468</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1469"><td class="num" id="LN1469">1469</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1470"><td class="num" id="LN1470">1470</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1471"><td class="num" id="LN1471">1471</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1472"><td class="num" id="LN1472">1472</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1473"><td class="num" id="LN1473">1473</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1474"><td class="num" id="LN1474">1474</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1475"><td class="num" id="LN1475">1475</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1476"><td class="num" id="LN1476">1476</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1477"><td class="num" id="LN1477">1477</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1478"><td class="num" id="LN1478">1478</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1479"><td class="num" id="LN1479">1479</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1480"><td class="num" id="LN1480">1480</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1481"><td class="num" id="LN1481">1481</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1482"><td class="num" id="LN1482">1482</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1483"><td class="num" id="LN1483">1483</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1484"><td class="num" id="LN1484">1484</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1485"><td class="num" id="LN1485">1485</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1486"><td class="num" id="LN1486">1486</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1487"><td class="num" id="LN1487">1487</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1488"><td class="num" id="LN1488">1488</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1489"><td class="num" id="LN1489">1489</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1490"><td class="num" id="LN1490">1490</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1491"><td class="num" id="LN1491">1491</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1492"><td class="num" id="LN1492">1492</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1493"><td class="num" id="LN1493">1493</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1494"><td class="num" id="LN1494">1494</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1495"><td class="num" id="LN1495">1495</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1496"><td class="num" id="LN1496">1496</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1497"><td class="num" id="LN1497">1497</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1498"><td class="num" id="LN1498">1498</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1499"><td class="num" id="LN1499">1499</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1500"><td class="num" id="LN1500">1500</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1501"><td class="num" id="LN1501">1501</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1502"><td class="num" id="LN1502">1502</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1503"><td class="num" id="LN1503">1503</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1504"><td class="num" id="LN1504">1504</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1505"><td class="num" id="LN1505">1505</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1506"><td class="num" id="LN1506">1506</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1507"><td class="num" id="LN1507">1507</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1508"><td class="num" id="LN1508">1508</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1509"><td class="num" id="LN1509">1509</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1510"><td class="num" id="LN1510">1510</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1511"><td class="num" id="LN1511">1511</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1512"><td class="num" id="LN1512">1512</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1513"><td class="num" id="LN1513">1513</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1514"><td class="num" id="LN1514">1514</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1515"><td class="num" id="LN1515">1515</td><td class="line"> rx = (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1516"><td class="num" id="LN1516">1516</td><td class="line"> gx = (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1517"><td class="num" id="LN1517">1517</td><td class="line"> bx = (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1518"><td class="num" id="LN1518">1518</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1519"><td class="num" id="LN1519">1519</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1520"><td class="num" id="LN1520">1520</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1521"><td class="num" id="LN1521">1521</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1522"><td class="num" id="LN1522">1522</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1523"><td class="num" id="LN1523">1523</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1524"><td class="num" id="LN1524">1524</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1525"><td class="num" id="LN1525">1525</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1526"><td class="num" id="LN1526">1526</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1527"><td class="num" id="LN1527">1527</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1528"><td class="num" id="LN1528">1528</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1529"><td class="num" id="LN1529">1529</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1530"><td class="num" id="LN1530">1530</td><td class="line"> rx += (<span class='macro'>R_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1531"><td class="num" id="LN1531">1531</td><td class="line"> gx += (<span class='macro'>G_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1532"><td class="num" id="LN1532">1532</td><td class="line"> bx += (<span class='macro'>B_VAL(pix)<span class='expansion'>((unsigned char*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1533"><td class="num" id="LN1533">1533</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1534"><td class="num" id="LN1534">1534</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1535"><td class="num" id="LN1535">1535</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1536"><td class="num" id="LN1536">1536</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1537"><td class="num" id="LN1537">1537</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1538"><td class="num" id="LN1538">1538</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1539"><td class="num" id="LN1539">1539</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1540"><td class="num" id="LN1540">1540</td><td class="line"> <span class='macro'>R_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1541"><td class="num" id="LN1541">1541</td><td class="line"> <span class='macro'>G_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1542"><td class="num" id="LN1542">1542</td><td class="line"> <span class='macro'>B_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1543"><td class="num" id="LN1543">1543</td><td class="line"> <span class='macro'>A_VAL(dptr)<span class='expansion'>((unsigned char*)(dptr))[3]</span></span> = 0xFF;</td></tr>
<tr class="codeline" data-linenumber="1544"><td class="num" id="LN1544">1544</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1545"><td class="num" id="LN1545">1545</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1546"><td class="num" id="LN1546">1546</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1547"><td class="num" id="LN1547">1547</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1548"><td class="num" id="LN1548">1548</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1549"><td class="num" id="LN1549">1549</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1550"><td class="num" id="LN1550">1550</td><td class="line"><span class='directive'>#define <span class='macro'>A_VAL16(p)<span class='expansion'>((ushort*)(p))[3]</span></span> ((ushort*)(p))[3]</span></td></tr>
<tr class="codeline" data-linenumber="1551"><td class="num" id="LN1551">1551</td><td class="line"><span class='directive'>#define <span class='macro'>R_VAL16(p)<span class='expansion'>((ushort*)(p))[2]</span></span> ((ushort*)(p))[2]</span></td></tr>
<tr class="codeline" data-linenumber="1552"><td class="num" id="LN1552">1552</td><td class="line"><span class='directive'>#define <span class='macro'>G_VAL16(p)<span class='expansion'>((ushort*)(p))[1]</span></span> ((ushort*)(p))[1]</span></td></tr>
<tr class="codeline" data-linenumber="1553"><td class="num" id="LN1553">1553</td><td class="line"><span class='directive'>#define <span class='macro'>B_VAL16(p)<span class='expansion'>((ushort*)(p))[0]</span></span> ((ushort*)(p))[0]</span></td></tr>
<tr class="codeline" data-linenumber="1554"><td class="num" id="LN1554">1554</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1555"><td class="num" id="LN1555">1555</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1556"><td class="num" id="LN1556">1556</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1557"><td class="num" id="LN1557">1557</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1558"><td class="num" id="LN1558">1558</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow)</td></tr>
<tr class="codeline" data-linenumber="1559"><td class="num" id="LN1559">1559</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1560"><td class="num" id="LN1560">1560</td><td class="line"> dimgScaleAARGB16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1561"><td class="num" id="LN1561">1561</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1562"><td class="num" id="LN1562">1562</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1563"><td class="num" id="LN1563">1563</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1564"><td class="num" id="LN1564">1564</td><td class="line"><span class='comment'>/** scale by area sampling - IGNORE the ALPHA byte*/</span></td></tr>
<tr class="codeline" data-linenumber="1565"><td class="num" id="LN1565">1565</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGB16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1566"><td class="num" id="LN1566">1566</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy, <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1567"><td class="num" id="LN1567">1567</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1568"><td class="num" id="LN1568">1568</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1569"><td class="num" id="LN1569">1569</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1570"><td class="num" id="LN1570">1570</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1571"><td class="num" id="LN1571">1571</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1572"><td class="num" id="LN1572">1572</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1573"><td class="num" id="LN1573">1573</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1574"><td class="num" id="LN1574">1574</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1575"><td class="num" id="LN1575">1575</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="1576"><td class="num" id="LN1576">1576</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="1577"><td class="num" id="LN1577">1577</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="1578"><td class="num" id="LN1578">1578</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="1579"><td class="num" id="LN1579">1579</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="1580"><td class="num" id="LN1580">1580</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1581"><td class="num" id="LN1581">1581</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="1582"><td class="num" id="LN1582">1582</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="1583"><td class="num" id="LN1583">1583</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="1584"><td class="num" id="LN1584">1584</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="1585"><td class="num" id="LN1585">1585</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1586"><td class="num" id="LN1586">1586</td><td class="line"> <span class='comment'>// scaling up both ways</span></td></tr>
<tr class="codeline" data-linenumber="1587"><td class="num" id="LN1587">1587</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="1588"><td class="num" id="LN1588">1588</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1589"><td class="num" id="LN1589">1589</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1590"><td class="num" id="LN1590">1590</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1591"><td class="num" id="LN1591">1591</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1592"><td class="num" id="LN1592">1592</td><td class="line"> <span class='comment'>// calculate the source line we'll scan from</span></td></tr>
<tr class="codeline" data-linenumber="1593"><td class="num" id="LN1593">1593</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1594"><td class="num" id="LN1594">1594</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="1595"><td class="num" id="LN1595">1595</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1596"><td class="num" id="LN1596">1596</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1597"><td class="num" id="LN1597">1597</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1598"><td class="num" id="LN1598">1598</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1599"><td class="num" id="LN1599">1599</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1600"><td class="num" id="LN1600">1600</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1601"><td class="num" id="LN1601">1601</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1602"><td class="num" id="LN1602">1602</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1603"><td class="num" id="LN1603">1603</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1604"><td class="num" id="LN1604">1604</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1605"><td class="num" id="LN1605">1605</td><td class="line"> llong rr = 0, gg = 0, bb = 0;</td></tr>
<tr class="codeline" data-linenumber="1606"><td class="num" id="LN1606">1606</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1607"><td class="num" id="LN1607">1607</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1608"><td class="num" id="LN1608">1608</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1609"><td class="num" id="LN1609">1609</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1610"><td class="num" id="LN1610">1610</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1611"><td class="num" id="LN1611">1611</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1612"><td class="num" id="LN1612">1612</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1613"><td class="num" id="LN1613">1613</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1614"><td class="num" id="LN1614">1614</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1615"><td class="num" id="LN1615">1615</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1616"><td class="num" id="LN1616">1616</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1617"><td class="num" id="LN1617">1617</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1618"><td class="num" id="LN1618">1618</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1619"><td class="num" id="LN1619">1619</td><td class="line"> pix--;</td></tr>
<tr class="codeline" data-linenumber="1620"><td class="num" id="LN1620">1620</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1621"><td class="num" id="LN1621">1621</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1622"><td class="num" id="LN1622">1622</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1623"><td class="num" id="LN1623">1623</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1624"><td class="num" id="LN1624">1624</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1625"><td class="num" id="LN1625">1625</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1626"><td class="num" id="LN1626">1626</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1627"><td class="num" id="LN1627">1627</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1628"><td class="num" id="LN1628">1628</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1629"><td class="num" id="LN1629">1629</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1630"><td class="num" id="LN1630">1630</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1631"><td class="num" id="LN1631">1631</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1632"><td class="num" id="LN1632">1632</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1633"><td class="num" id="LN1633">1633</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1634"><td class="num" id="LN1634">1634</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1635"><td class="num" id="LN1635">1635</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1636"><td class="num" id="LN1636">1636</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1637"><td class="num" id="LN1637">1637</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1638"><td class="num" id="LN1638">1638</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1639"><td class="num" id="LN1639">1639</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1640"><td class="num" id="LN1640">1640</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1641"><td class="num" id="LN1641">1641</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1642"><td class="num" id="LN1642">1642</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1643"><td class="num" id="LN1643">1643</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1644"><td class="num" id="LN1644">1644</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1645"><td class="num" id="LN1645">1645</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1646"><td class="num" id="LN1646">1646</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1647"><td class="num" id="LN1647">1647</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1648"><td class="num" id="LN1648">1648</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1649"><td class="num" id="LN1649">1649</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1650"><td class="num" id="LN1650">1650</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1651"><td class="num" id="LN1651">1651</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1652"><td class="num" id="LN1652">1652</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1653"><td class="num" id="LN1653">1653</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1654"><td class="num" id="LN1654">1654</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1655"><td class="num" id="LN1655">1655</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1656"><td class="num" id="LN1656">1656</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1657"><td class="num" id="LN1657">1657</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1658"><td class="num" id="LN1658">1658</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1659"><td class="num" id="LN1659">1659</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1660"><td class="num" id="LN1660">1660</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1661"><td class="num" id="LN1661">1661</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1662"><td class="num" id="LN1662">1662</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1663"><td class="num" id="LN1663">1663</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1664"><td class="num" id="LN1664">1664</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1665"><td class="num" id="LN1665">1665</td><td class="line"> llong r = 0, g = 0, b = 0;</td></tr>
<tr class="codeline" data-linenumber="1666"><td class="num" id="LN1666">1666</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1667"><td class="num" id="LN1667">1667</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1668"><td class="num" id="LN1668">1668</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1669"><td class="num" id="LN1669">1669</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1670"><td class="num" id="LN1670">1670</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1671"><td class="num" id="LN1671">1671</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1672"><td class="num" id="LN1672">1672</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1673"><td class="num" id="LN1673">1673</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1674"><td class="num" id="LN1674">1674</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1675"><td class="num" id="LN1675">1675</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1676"><td class="num" id="LN1676">1676</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1677"><td class="num" id="LN1677">1677</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="1678"><td class="num" id="LN1678">1678</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1679"><td class="num" id="LN1679">1679</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1680"><td class="num" id="LN1680">1680</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1681"><td class="num" id="LN1681">1681</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1682"><td class="num" id="LN1682">1682</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1683"><td class="num" id="LN1683">1683</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1684"><td class="num" id="LN1684">1684</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1685"><td class="num" id="LN1685">1685</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1686"><td class="num" id="LN1686">1686</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1687"><td class="num" id="LN1687">1687</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1688"><td class="num" id="LN1688">1688</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="1689"><td class="num" id="LN1689">1689</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1690"><td class="num" id="LN1690">1690</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1691"><td class="num" id="LN1691">1691</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1692"><td class="num" id="LN1692">1692</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1693"><td class="num" id="LN1693">1693</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1694"><td class="num" id="LN1694">1694</td><td class="line"> <span class='comment'>// if we're scaling down vertically</span></td></tr>
<tr class="codeline" data-linenumber="1695"><td class="num" id="LN1695">1695</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="1696"><td class="num" id="LN1696">1696</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1697"><td class="num" id="LN1697">1697</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1698"><td class="num" id="LN1698">1698</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="1699"><td class="num" id="LN1699">1699</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1700"><td class="num" id="LN1700">1700</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1701"><td class="num" id="LN1701">1701</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="1702"><td class="num" id="LN1702">1702</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1703"><td class="num" id="LN1703">1703</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1704"><td class="num" id="LN1704">1704</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1705"><td class="num" id="LN1705">1705</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1706"><td class="num" id="LN1706">1706</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1707"><td class="num" id="LN1707">1707</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1708"><td class="num" id="LN1708">1708</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1709"><td class="num" id="LN1709">1709</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1710"><td class="num" id="LN1710">1710</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1711"><td class="num" id="LN1711">1711</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1712"><td class="num" id="LN1712">1712</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1713"><td class="num" id="LN1713">1713</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1714"><td class="num" id="LN1714">1714</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1715"><td class="num" id="LN1715">1715</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1716"><td class="num" id="LN1716">1716</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1717"><td class="num" id="LN1717">1717</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1718"><td class="num" id="LN1718">1718</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1719"><td class="num" id="LN1719">1719</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1720"><td class="num" id="LN1720">1720</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1721"><td class="num" id="LN1721">1721</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1722"><td class="num" id="LN1722">1722</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1723"><td class="num" id="LN1723">1723</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1724"><td class="num" id="LN1724">1724</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1725"><td class="num" id="LN1725">1725</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1726"><td class="num" id="LN1726">1726</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1727"><td class="num" id="LN1727">1727</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1728"><td class="num" id="LN1728">1728</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1729"><td class="num" id="LN1729">1729</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1730"><td class="num" id="LN1730">1730</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1731"><td class="num" id="LN1731">1731</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1732"><td class="num" id="LN1732">1732</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1733"><td class="num" id="LN1733">1733</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1734"><td class="num" id="LN1734">1734</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1735"><td class="num" id="LN1735">1735</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="1736"><td class="num" id="LN1736">1736</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1737"><td class="num" id="LN1737">1737</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1738"><td class="num" id="LN1738">1738</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1739"><td class="num" id="LN1739">1739</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1740"><td class="num" id="LN1740">1740</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1741"><td class="num" id="LN1741">1741</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1742"><td class="num" id="LN1742">1742</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1743"><td class="num" id="LN1743">1743</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1744"><td class="num" id="LN1744">1744</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1745"><td class="num" id="LN1745">1745</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1746"><td class="num" id="LN1746">1746</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="1747"><td class="num" id="LN1747">1747</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1748"><td class="num" id="LN1748">1748</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1749"><td class="num" id="LN1749">1749</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1750"><td class="num" id="LN1750">1750</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1751"><td class="num" id="LN1751">1751</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1752"><td class="num" id="LN1752">1752</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1753"><td class="num" id="LN1753">1753</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1754"><td class="num" id="LN1754">1754</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1755"><td class="num" id="LN1755">1755</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1756"><td class="num" id="LN1756">1756</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1757"><td class="num" id="LN1757">1757</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1758"><td class="num" id="LN1758">1758</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1759"><td class="num" id="LN1759">1759</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1760"><td class="num" id="LN1760">1760</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1761"><td class="num" id="LN1761">1761</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1762"><td class="num" id="LN1762">1762</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1763"><td class="num" id="LN1763">1763</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1764"><td class="num" id="LN1764">1764</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1765"><td class="num" id="LN1765">1765</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1766"><td class="num" id="LN1766">1766</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1767"><td class="num" id="LN1767">1767</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1768"><td class="num" id="LN1768">1768</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1769"><td class="num" id="LN1769">1769</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1770"><td class="num" id="LN1770">1770</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1771"><td class="num" id="LN1771">1771</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1772"><td class="num" id="LN1772">1772</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1773"><td class="num" id="LN1773">1773</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1774"><td class="num" id="LN1774">1774</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1775"><td class="num" id="LN1775">1775</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1776"><td class="num" id="LN1776">1776</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1777"><td class="num" id="LN1777">1777</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1778"><td class="num" id="LN1778">1778</td><td class="line"> <span class='comment'>// if we're scaling down horizontally</span></td></tr>
<tr class="codeline" data-linenumber="1779"><td class="num" id="LN1779">1779</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="1780"><td class="num" id="LN1780">1780</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1781"><td class="num" id="LN1781">1781</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1782"><td class="num" id="LN1782">1782</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="1783"><td class="num" id="LN1783">1783</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1784"><td class="num" id="LN1784">1784</td><td class="line"> llong r, g, b, rr, gg, bb;</td></tr>
<tr class="codeline" data-linenumber="1785"><td class="num" id="LN1785">1785</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="1786"><td class="num" id="LN1786">1786</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1787"><td class="num" id="LN1787">1787</td><td class="line"> <span class='comment'>// go through every scanline in the output buffer</span></td></tr>
<tr class="codeline" data-linenumber="1788"><td class="num" id="LN1788">1788</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1789"><td class="num" id="LN1789">1789</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1790"><td class="num" id="LN1790">1790</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1791"><td class="num" id="LN1791">1791</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1792"><td class="num" id="LN1792">1792</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1793"><td class="num" id="LN1793">1793</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1794"><td class="num" id="LN1794">1794</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1795"><td class="num" id="LN1795">1795</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1796"><td class="num" id="LN1796">1796</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1797"><td class="num" id="LN1797">1797</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1798"><td class="num" id="LN1798">1798</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1799"><td class="num" id="LN1799">1799</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1800"><td class="num" id="LN1800">1800</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1801"><td class="num" id="LN1801">1801</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1802"><td class="num" id="LN1802">1802</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1803"><td class="num" id="LN1803">1803</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1804"><td class="num" id="LN1804">1804</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1805"><td class="num" id="LN1805">1805</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1806"><td class="num" id="LN1806">1806</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1807"><td class="num" id="LN1807">1807</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1808"><td class="num" id="LN1808">1808</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1809"><td class="num" id="LN1809">1809</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1810"><td class="num" id="LN1810">1810</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1811"><td class="num" id="LN1811">1811</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1812"><td class="num" id="LN1812">1812</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1813"><td class="num" id="LN1813">1813</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1814"><td class="num" id="LN1814">1814</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1815"><td class="num" id="LN1815">1815</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1816"><td class="num" id="LN1816">1816</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1817"><td class="num" id="LN1817">1817</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1818"><td class="num" id="LN1818">1818</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1819"><td class="num" id="LN1819">1819</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="1820"><td class="num" id="LN1820">1820</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1821"><td class="num" id="LN1821">1821</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1822"><td class="num" id="LN1822">1822</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1823"><td class="num" id="LN1823">1823</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1824"><td class="num" id="LN1824">1824</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1825"><td class="num" id="LN1825">1825</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1826"><td class="num" id="LN1826">1826</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1827"><td class="num" id="LN1827">1827</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1828"><td class="num" id="LN1828">1828</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1829"><td class="num" id="LN1829">1829</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1830"><td class="num" id="LN1830">1830</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1831"><td class="num" id="LN1831">1831</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1832"><td class="num" id="LN1832">1832</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1833"><td class="num" id="LN1833">1833</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1834"><td class="num" id="LN1834">1834</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1835"><td class="num" id="LN1835">1835</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1836"><td class="num" id="LN1836">1836</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1837"><td class="num" id="LN1837">1837</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="1838"><td class="num" id="LN1838">1838</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1839"><td class="num" id="LN1839">1839</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1840"><td class="num" id="LN1840">1840</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1841"><td class="num" id="LN1841">1841</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1842"><td class="num" id="LN1842">1842</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1843"><td class="num" id="LN1843">1843</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1844"><td class="num" id="LN1844">1844</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1845"><td class="num" id="LN1845">1845</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="1846"><td class="num" id="LN1846">1846</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1847"><td class="num" id="LN1847">1847</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1848"><td class="num" id="LN1848">1848</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1849"><td class="num" id="LN1849">1849</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1850"><td class="num" id="LN1850">1850</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1851"><td class="num" id="LN1851">1851</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="1852"><td class="num" id="LN1852">1852</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1853"><td class="num" id="LN1853">1853</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1854"><td class="num" id="LN1854">1854</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="1855"><td class="num" id="LN1855">1855</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="1856"><td class="num" id="LN1856">1856</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="1857"><td class="num" id="LN1857">1857</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1858"><td class="num" id="LN1858">1858</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1859"><td class="num" id="LN1859">1859</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1860"><td class="num" id="LN1860">1860</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1861"><td class="num" id="LN1861">1861</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1862"><td class="num" id="LN1862">1862</td><td class="line"> <span class='comment'>// fully optimized (i think) - only change of algorithm can help</span></td></tr>
<tr class="codeline" data-linenumber="1863"><td class="num" id="LN1863">1863</td><td class="line"> <span class='comment'>// if we're scaling down horizontally &amp; vertically</span></td></tr>
<tr class="codeline" data-linenumber="1864"><td class="num" id="LN1864">1864</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="1865"><td class="num" id="LN1865">1865</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1866"><td class="num" id="LN1866">1866</td><td class="line"> <span class='comment'>// 'Correct' version, with math units prepared for MMXification</span></td></tr>
<tr class="codeline" data-linenumber="1867"><td class="num" id="LN1867">1867</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="1868"><td class="num" id="LN1868">1868</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="1869"><td class="num" id="LN1869">1869</td><td class="line"> llong r, g, b, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="1870"><td class="num" id="LN1870">1870</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="1871"><td class="num" id="LN1871">1871</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1872"><td class="num" id="LN1872">1872</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="1873"><td class="num" id="LN1873">1873</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1874"><td class="num" id="LN1874">1874</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1875"><td class="num" id="LN1875">1875</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1876"><td class="num" id="LN1876">1876</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="1877"><td class="num" id="LN1877">1877</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1878"><td class="num" id="LN1878">1878</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="1879"><td class="num" id="LN1879">1879</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1880"><td class="num" id="LN1880">1880</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="1881"><td class="num" id="LN1881">1881</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="1882"><td class="num" id="LN1882">1882</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="1883"><td class="num" id="LN1883">1883</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1884"><td class="num" id="LN1884">1884</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1885"><td class="num" id="LN1885">1885</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1886"><td class="num" id="LN1886">1886</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1887"><td class="num" id="LN1887">1887</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1888"><td class="num" id="LN1888">1888</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1889"><td class="num" id="LN1889">1889</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1890"><td class="num" id="LN1890">1890</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1891"><td class="num" id="LN1891">1891</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1892"><td class="num" id="LN1892">1892</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1893"><td class="num" id="LN1893">1893</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1894"><td class="num" id="LN1894">1894</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1895"><td class="num" id="LN1895">1895</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1896"><td class="num" id="LN1896">1896</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1897"><td class="num" id="LN1897">1897</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1898"><td class="num" id="LN1898">1898</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1899"><td class="num" id="LN1899">1899</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1900"><td class="num" id="LN1900">1900</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1901"><td class="num" id="LN1901">1901</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1902"><td class="num" id="LN1902">1902</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1903"><td class="num" id="LN1903">1903</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1904"><td class="num" id="LN1904">1904</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1905"><td class="num" id="LN1905">1905</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1906"><td class="num" id="LN1906">1906</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1907"><td class="num" id="LN1907">1907</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1908"><td class="num" id="LN1908">1908</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1909"><td class="num" id="LN1909">1909</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="1910"><td class="num" id="LN1910">1910</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1911"><td class="num" id="LN1911">1911</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1912"><td class="num" id="LN1912">1912</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1913"><td class="num" id="LN1913">1913</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1914"><td class="num" id="LN1914">1914</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1915"><td class="num" id="LN1915">1915</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1916"><td class="num" id="LN1916">1916</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1917"><td class="num" id="LN1917">1917</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1918"><td class="num" id="LN1918">1918</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1919"><td class="num" id="LN1919">1919</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1920"><td class="num" id="LN1920">1920</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1921"><td class="num" id="LN1921">1921</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1922"><td class="num" id="LN1922">1922</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1923"><td class="num" id="LN1923">1923</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1924"><td class="num" id="LN1924">1924</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1925"><td class="num" id="LN1925">1925</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1926"><td class="num" id="LN1926">1926</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1927"><td class="num" id="LN1927">1927</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1928"><td class="num" id="LN1928">1928</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1929"><td class="num" id="LN1929">1929</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1930"><td class="num" id="LN1930">1930</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1931"><td class="num" id="LN1931">1931</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1932"><td class="num" id="LN1932">1932</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1933"><td class="num" id="LN1933">1933</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1934"><td class="num" id="LN1934">1934</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1935"><td class="num" id="LN1935">1935</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1936"><td class="num" id="LN1936">1936</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1937"><td class="num" id="LN1937">1937</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1938"><td class="num" id="LN1938">1938</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1939"><td class="num" id="LN1939">1939</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1940"><td class="num" id="LN1940">1940</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="1941"><td class="num" id="LN1941">1941</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="1942"><td class="num" id="LN1942">1942</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="1943"><td class="num" id="LN1943">1943</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1944"><td class="num" id="LN1944">1944</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1945"><td class="num" id="LN1945">1945</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1946"><td class="num" id="LN1946">1946</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1947"><td class="num" id="LN1947">1947</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1948"><td class="num" id="LN1948">1948</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1949"><td class="num" id="LN1949">1949</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="1950"><td class="num" id="LN1950">1950</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1951"><td class="num" id="LN1951">1951</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1952"><td class="num" id="LN1952">1952</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1953"><td class="num" id="LN1953">1953</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1954"><td class="num" id="LN1954">1954</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="1955"><td class="num" id="LN1955">1955</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1956"><td class="num" id="LN1956">1956</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1957"><td class="num" id="LN1957">1957</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="1958"><td class="num" id="LN1958">1958</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="1959"><td class="num" id="LN1959">1959</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1960"><td class="num" id="LN1960">1960</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1961"><td class="num" id="LN1961">1961</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="1962"><td class="num" id="LN1962">1962</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1963"><td class="num" id="LN1963">1963</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1964"><td class="num" id="LN1964">1964</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1965"><td class="num" id="LN1965">1965</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1966"><td class="num" id="LN1966">1966</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="1967"><td class="num" id="LN1967">1967</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1968"><td class="num" id="LN1968">1968</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1969"><td class="num" id="LN1969">1969</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1970"><td class="num" id="LN1970">1970</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1971"><td class="num" id="LN1971">1971</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="1972"><td class="num" id="LN1972">1972</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = 0xFFFF;</td></tr>
<tr class="codeline" data-linenumber="1973"><td class="num" id="LN1973">1973</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="1974"><td class="num" id="LN1974">1974</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1975"><td class="num" id="LN1975">1975</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1976"><td class="num" id="LN1976">1976</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="1977"><td class="num" id="LN1977">1977</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1978"><td class="num" id="LN1978">1978</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1979"><td class="num" id="LN1979">1979</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1980"><td class="num" id="LN1980">1980</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1981"><td class="num" id="LN1981">1981</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1982"><td class="num" id="LN1982">1982</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow</td></tr>
<tr class="codeline" data-linenumber="1983"><td class="num" id="LN1983">1983</td><td class="line"> )</td></tr>
<tr class="codeline" data-linenumber="1984"><td class="num" id="LN1984">1984</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1985"><td class="num" id="LN1985">1985</td><td class="line"> dimgScaleAARGBA16(isi, dest, dxx, dyy, dw, dh, dow, sow,</td></tr>
<tr class="codeline" data-linenumber="1986"><td class="num" id="LN1986">1986</td><td class="line"> 0, 0, dw, dh);</td></tr>
<tr class="codeline" data-linenumber="1987"><td class="num" id="LN1987">1987</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="1988"><td class="num" id="LN1988">1988</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="1989"><td class="num" id="LN1989">1989</td><td class="line"><span class='comment'>/* scale by area sampling */</span></td></tr>
<tr class="codeline" data-linenumber="1990"><td class="num" id="LN1990">1990</td><td class="line"><span class='keyword'>void</span> DImgScale::dimgScaleAARGBA16(DImgScaleInfo* <span class='keyword'>const</span> isi, ullong* <span class='keyword'>const</span> dest,</td></tr>
<tr class="codeline" data-linenumber="1991"><td class="num" id="LN1991">1991</td><td class="line"> <span class='keyword'>int</span> dxx, <span class='keyword'>int</span> dyy,</td></tr>
<tr class="codeline" data-linenumber="1992"><td class="num" id="LN1992">1992</td><td class="line"> <span class='keyword'>int</span> dw, <span class='keyword'>int</span> dh,</td></tr>
<tr class="codeline" data-linenumber="1993"><td class="num" id="LN1993">1993</td><td class="line"> <span class='keyword'>int</span> dow, <span class='keyword'>int</span> sow,</td></tr>
<tr class="codeline" data-linenumber="1994"><td class="num" id="LN1994">1994</td><td class="line"> <span class='keyword'>int</span> clip_dx, <span class='keyword'>int</span> clip_dy,</td></tr>
<tr class="codeline" data-linenumber="1995"><td class="num" id="LN1995">1995</td><td class="line"> <span class='keyword'>int</span> clip_dw, <span class='keyword'>int</span> clip_dh)</td></tr>
<tr class="codeline" data-linenumber="1996"><td class="num" id="LN1996">1996</td><td class="line">{</td></tr>
<tr class="codeline" data-linenumber="1997"><td class="num" id="LN1997">1997</td><td class="line"> <span class='macro'>Q_UNUSED(dw)<span class='expansion'>(void)dw;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1998"><td class="num" id="LN1998">1998</td><td class="line"> <span class='macro'>Q_UNUSED(dh)<span class='expansion'>(void)dh;</span></span>;</td></tr>
<tr class="codeline" data-linenumber="1999"><td class="num" id="LN1999">1999</td><td class="line"> ullong* sptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2000"><td class="num" id="LN2000">2000</td><td class="line"> ullong* dptr=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2001"><td class="num" id="LN2001">2001</td><td class="line"> <span class='keyword'>int</span> x, y;</td></tr>
<tr class="codeline" data-linenumber="2002"><td class="num" id="LN2002">2002</td><td class="line"> ullong** ypoints = isi-&gt;ypoints16;</td></tr>
<tr class="codeline" data-linenumber="2003"><td class="num" id="LN2003">2003</td><td class="line"> <span class='keyword'>int</span>* xpoints = isi-&gt;xpoints;</td></tr>
<tr class="codeline" data-linenumber="2004"><td class="num" id="LN2004">2004</td><td class="line"> <span class='keyword'>int</span>* xapoints = isi-&gt;xapoints;</td></tr>
<tr class="codeline" data-linenumber="2005"><td class="num" id="LN2005">2005</td><td class="line"> <span class='keyword'>int</span>* yapoints = isi-&gt;yapoints;</td></tr>
<tr class="codeline" data-linenumber="2006"><td class="num" id="LN2006">2006</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2007"><td class="num" id="LN2007">2007</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_begin = dxx + clip_dx; <span class='comment'>// no clip set = dxx</span></td></tr>
<tr class="codeline" data-linenumber="2008"><td class="num" id="LN2008">2008</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> x_end = x_begin + clip_dw; <span class='comment'>// no clip set = dxx + dw</span></td></tr>
<tr class="codeline" data-linenumber="2009"><td class="num" id="LN2009">2009</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_begin = clip_dy; <span class='comment'>// no clip set = 0</span></td></tr>
<tr class="codeline" data-linenumber="2010"><td class="num" id="LN2010">2010</td><td class="line"> <span class='keyword'>const</span> <span class='keyword'>int</span> y_end = clip_dy + clip_dh; <span class='comment'>// no clip set = dh</span></td></tr>
<tr class="codeline" data-linenumber="2011"><td class="num" id="LN2011">2011</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2012"><td class="num" id="LN2012">2012</td><td class="line"> <span class='comment'>/* scaling up both ways */</span></td></tr>
<tr class="codeline" data-linenumber="2013"><td class="num" id="LN2013">2013</td><td class="line"> <span class='keyword'>if</span> (isi-&gt;xup_yup == 3)</td></tr>
<tr class="codeline" data-linenumber="2014"><td class="num" id="LN2014">2014</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2015"><td class="num" id="LN2015">2015</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2016"><td class="num" id="LN2016">2016</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2017"><td class="num" id="LN2017">2017</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2018"><td class="num" id="LN2018">2018</td><td class="line"> <span class='comment'>/* calculate the source line we'll scan from */</span></td></tr>
<tr class="codeline" data-linenumber="2019"><td class="num" id="LN2019">2019</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2020"><td class="num" id="LN2020">2020</td><td class="line"> sptr = ypoints[dyy + y];</td></tr>
<tr class="codeline" data-linenumber="2021"><td class="num" id="LN2021">2021</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2022"><td class="num" id="LN2022">2022</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2023"><td class="num" id="LN2023">2023</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2024"><td class="num" id="LN2024">2024</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2025"><td class="num" id="LN2025">2025</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2026"><td class="num" id="LN2026">2026</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2027"><td class="num" id="LN2027">2027</td><td class="line"> llong rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2028"><td class="num" id="LN2028">2028</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2029"><td class="num" id="LN2029">2029</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2030"><td class="num" id="LN2030">2030</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2031"><td class="num" id="LN2031">2031</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2032"><td class="num" id="LN2032">2032</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2033"><td class="num" id="LN2033">2033</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2034"><td class="num" id="LN2034">2034</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2035"><td class="num" id="LN2035">2035</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2036"><td class="num" id="LN2036">2036</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2037"><td class="num" id="LN2037">2037</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2038"><td class="num" id="LN2038">2038</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2039"><td class="num" id="LN2039">2039</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2040"><td class="num" id="LN2040">2040</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2041"><td class="num" id="LN2041">2041</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2042"><td class="num" id="LN2042">2042</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2043"><td class="num" id="LN2043">2043</td><td class="line"> rr = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2044"><td class="num" id="LN2044">2044</td><td class="line"> gg = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2045"><td class="num" id="LN2045">2045</td><td class="line"> bb = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2046"><td class="num" id="LN2046">2046</td><td class="line"> aa = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2047"><td class="num" id="LN2047">2047</td><td class="line"> --pix;</td></tr>
<tr class="codeline" data-linenumber="2048"><td class="num" id="LN2048">2048</td><td class="line"> rr += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2049"><td class="num" id="LN2049">2049</td><td class="line"> gg += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2050"><td class="num" id="LN2050">2050</td><td class="line"> bb += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2051"><td class="num" id="LN2051">2051</td><td class="line"> aa += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2052"><td class="num" id="LN2052">2052</td><td class="line"> r = ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2053"><td class="num" id="LN2053">2053</td><td class="line"> g = ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2054"><td class="num" id="LN2054">2054</td><td class="line"> b = ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2055"><td class="num" id="LN2055">2055</td><td class="line"> a = ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>) + (a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>)) &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2056"><td class="num" id="LN2056">2056</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2057"><td class="num" id="LN2057">2057</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2058"><td class="num" id="LN2058">2058</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2059"><td class="num" id="LN2059">2059</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2060"><td class="num" id="LN2060">2060</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2061"><td class="num" id="LN2061">2061</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2062"><td class="num" id="LN2062">2062</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2063"><td class="num" id="LN2063">2063</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2064"><td class="num" id="LN2064">2064</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2065"><td class="num" id="LN2065">2065</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2066"><td class="num" id="LN2066">2066</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2067"><td class="num" id="LN2067">2067</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2068"><td class="num" id="LN2068">2068</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2069"><td class="num" id="LN2069">2069</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2070"><td class="num" id="LN2070">2070</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2071"><td class="num" id="LN2071">2071</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2072"><td class="num" id="LN2072">2072</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2073"><td class="num" id="LN2073">2073</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2074"><td class="num" id="LN2074">2074</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2075"><td class="num" id="LN2075">2075</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2076"><td class="num" id="LN2076">2076</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2077"><td class="num" id="LN2077">2077</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2078"><td class="num" id="LN2078">2078</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2079"><td class="num" id="LN2079">2079</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2080"><td class="num" id="LN2080">2080</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2081"><td class="num" id="LN2081">2081</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2082"><td class="num" id="LN2082">2082</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2083"><td class="num" id="LN2083">2083</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2084"><td class="num" id="LN2084">2084</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2085"><td class="num" id="LN2085">2085</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2086"><td class="num" id="LN2086">2086</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2087"><td class="num" id="LN2087">2087</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2088"><td class="num" id="LN2088">2088</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2089"><td class="num" id="LN2089">2089</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2090"><td class="num" id="LN2090">2090</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2091"><td class="num" id="LN2091">2091</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2092"><td class="num" id="LN2092">2092</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2093"><td class="num" id="LN2093">2093</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2094"><td class="num" id="LN2094">2094</td><td class="line"> llong r, g, b, a;</td></tr>
<tr class="codeline" data-linenumber="2095"><td class="num" id="LN2095">2095</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2096"><td class="num" id="LN2096">2096</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2097"><td class="num" id="LN2097">2097</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2098"><td class="num" id="LN2098">2098</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2099"><td class="num" id="LN2099">2099</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2100"><td class="num" id="LN2100">2100</td><td class="line"> r = <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2101"><td class="num" id="LN2101">2101</td><td class="line"> g = <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2102"><td class="num" id="LN2102">2102</td><td class="line"> b = <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2103"><td class="num" id="LN2103">2103</td><td class="line"> a = <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2104"><td class="num" id="LN2104">2104</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2105"><td class="num" id="LN2105">2105</td><td class="line"> r += <span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2106"><td class="num" id="LN2106">2106</td><td class="line"> g += <span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2107"><td class="num" id="LN2107">2107</td><td class="line"> b += <span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2108"><td class="num" id="LN2108">2108</td><td class="line"> a += <span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2109"><td class="num" id="LN2109">2109</td><td class="line"> r &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2110"><td class="num" id="LN2110">2110</td><td class="line"> g &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2111"><td class="num" id="LN2111">2111</td><td class="line"> b &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2112"><td class="num" id="LN2112">2112</td><td class="line"> a &gt;&gt;= 8;</td></tr>
<tr class="codeline" data-linenumber="2113"><td class="num" id="LN2113">2113</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2114"><td class="num" id="LN2114">2114</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2115"><td class="num" id="LN2115">2115</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2116"><td class="num" id="LN2116">2116</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2117"><td class="num" id="LN2117">2117</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2118"><td class="num" id="LN2118">2118</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2119"><td class="num" id="LN2119">2119</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2120"><td class="num" id="LN2120">2120</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2121"><td class="num" id="LN2121">2121</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2122"><td class="num" id="LN2122">2122</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2123"><td class="num" id="LN2123">2123</td><td class="line"> *dptr++ = sptr[xpoints[x] ];</td></tr>
<tr class="codeline" data-linenumber="2124"><td class="num" id="LN2124">2124</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2125"><td class="num" id="LN2125">2125</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2126"><td class="num" id="LN2126">2126</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2127"><td class="num" id="LN2127">2127</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2128"><td class="num" id="LN2128">2128</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2129"><td class="num" id="LN2129">2129</td><td class="line"> <span class='comment'>/* if we're scaling down vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2130"><td class="num" id="LN2130">2130</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 1)</td></tr>
<tr class="codeline" data-linenumber="2131"><td class="num" id="LN2131">2131</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2132"><td class="num" id="LN2132">2132</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2133"><td class="num" id="LN2133">2133</td><td class="line"> <span class='keyword'>int</span> Cy, j;</td></tr>
<tr class="codeline" data-linenumber="2134"><td class="num" id="LN2134">2134</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2135"><td class="num" id="LN2135">2135</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2136"><td class="num" id="LN2136">2136</td><td class="line"> <span class='keyword'>int</span> yap;</td></tr>
<tr class="codeline" data-linenumber="2137"><td class="num" id="LN2137">2137</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2138"><td class="num" id="LN2138">2138</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2139"><td class="num" id="LN2139">2139</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2140"><td class="num" id="LN2140">2140</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2141"><td class="num" id="LN2141">2141</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2142"><td class="num" id="LN2142">2142</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2143"><td class="num" id="LN2143">2143</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2144"><td class="num" id="LN2144">2144</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2145"><td class="num" id="LN2145">2145</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2146"><td class="num" id="LN2146">2146</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2147"><td class="num" id="LN2147">2147</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2148"><td class="num" id="LN2148">2148</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2149"><td class="num" id="LN2149">2149</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2150"><td class="num" id="LN2150">2150</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2151"><td class="num" id="LN2151">2151</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2152"><td class="num" id="LN2152">2152</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2153"><td class="num" id="LN2153">2153</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2154"><td class="num" id="LN2154">2154</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2155"><td class="num" id="LN2155">2155</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2156"><td class="num" id="LN2156">2156</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2157"><td class="num" id="LN2157">2157</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2158"><td class="num" id="LN2158">2158</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2159"><td class="num" id="LN2159">2159</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2160"><td class="num" id="LN2160">2160</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2161"><td class="num" id="LN2161">2161</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2162"><td class="num" id="LN2162">2162</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2163"><td class="num" id="LN2163">2163</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2164"><td class="num" id="LN2164">2164</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2165"><td class="num" id="LN2165">2165</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2166"><td class="num" id="LN2166">2166</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2167"><td class="num" id="LN2167">2167</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2168"><td class="num" id="LN2168">2168</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2169"><td class="num" id="LN2169">2169</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2170"><td class="num" id="LN2170">2170</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2171"><td class="num" id="LN2171">2171</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2172"><td class="num" id="LN2172">2172</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2173"><td class="num" id="LN2173">2173</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + 1;</td></tr>
<tr class="codeline" data-linenumber="2174"><td class="num" id="LN2174">2174</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2175"><td class="num" id="LN2175">2175</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2176"><td class="num" id="LN2176">2176</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2177"><td class="num" id="LN2177">2177</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * yap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2178"><td class="num" id="LN2178">2178</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2179"><td class="num" id="LN2179">2179</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2180"><td class="num" id="LN2180">2180</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2181"><td class="num" id="LN2181">2181</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2182"><td class="num" id="LN2182">2182</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2183"><td class="num" id="LN2183">2183</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2184"><td class="num" id="LN2184">2184</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2185"><td class="num" id="LN2185">2185</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cy) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2186"><td class="num" id="LN2186">2186</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2187"><td class="num" id="LN2187">2187</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2188"><td class="num" id="LN2188">2188</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2189"><td class="num" id="LN2189">2189</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2190"><td class="num" id="LN2190">2190</td><td class="line"> pix += sow;</td></tr>
<tr class="codeline" data-linenumber="2191"><td class="num" id="LN2191">2191</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2192"><td class="num" id="LN2192">2192</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2193"><td class="num" id="LN2193">2193</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2194"><td class="num" id="LN2194">2194</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2195"><td class="num" id="LN2195">2195</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2196"><td class="num" id="LN2196">2196</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2197"><td class="num" id="LN2197">2197</td><td class="line"> r = r * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2198"><td class="num" id="LN2198">2198</td><td class="line"> g = g * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2199"><td class="num" id="LN2199">2199</td><td class="line"> b = b * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2200"><td class="num" id="LN2200">2200</td><td class="line"> a = a * <span class='macro'>INV_XAP<span class='expansion'>(256 - xapoints[x])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2201"><td class="num" id="LN2201">2201</td><td class="line"> r = (r + ((rr * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2202"><td class="num" id="LN2202">2202</td><td class="line"> g = (g + ((gg * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2203"><td class="num" id="LN2203">2203</td><td class="line"> b = (b + ((bb * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2204"><td class="num" id="LN2204">2204</td><td class="line"> a = (a + ((aa * <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2205"><td class="num" id="LN2205">2205</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2206"><td class="num" id="LN2206">2206</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2207"><td class="num" id="LN2207">2207</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2208"><td class="num" id="LN2208">2208</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2209"><td class="num" id="LN2209">2209</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2210"><td class="num" id="LN2210">2210</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2211"><td class="num" id="LN2211">2211</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2212"><td class="num" id="LN2212">2212</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2213"><td class="num" id="LN2213">2213</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2214"><td class="num" id="LN2214">2214</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2215"><td class="num" id="LN2215">2215</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2216"><td class="num" id="LN2216">2216</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2217"><td class="num" id="LN2217">2217</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2218"><td class="num" id="LN2218">2218</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2219"><td class="num" id="LN2219">2219</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2220"><td class="num" id="LN2220">2220</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2221"><td class="num" id="LN2221">2221</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2222"><td class="num" id="LN2222">2222</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2223"><td class="num" id="LN2223">2223</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally */</span></td></tr>
<tr class="codeline" data-linenumber="2224"><td class="num" id="LN2224">2224</td><td class="line"> <span class='keyword'>else</span> <span class='keyword'>if</span> (isi-&gt;xup_yup == 2)</td></tr>
<tr class="codeline" data-linenumber="2225"><td class="num" id="LN2225">2225</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2226"><td class="num" id="LN2226">2226</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification \*/</span></td></tr>
<tr class="codeline" data-linenumber="2227"><td class="num" id="LN2227">2227</td><td class="line"> <span class='keyword'>int</span> Cx, j;</td></tr>
<tr class="codeline" data-linenumber="2228"><td class="num" id="LN2228">2228</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2229"><td class="num" id="LN2229">2229</td><td class="line"> llong r, g, b, a, rr, gg, bb, aa;</td></tr>
<tr class="codeline" data-linenumber="2230"><td class="num" id="LN2230">2230</td><td class="line"> <span class='keyword'>int</span> xap;</td></tr>
<tr class="codeline" data-linenumber="2231"><td class="num" id="LN2231">2231</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2232"><td class="num" id="LN2232">2232</td><td class="line"> <span class='comment'>/* go through every scanline in the output buffer */</span></td></tr>
<tr class="codeline" data-linenumber="2233"><td class="num" id="LN2233">2233</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2234"><td class="num" id="LN2234">2234</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2235"><td class="num" id="LN2235">2235</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2236"><td class="num" id="LN2236">2236</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2237"><td class="num" id="LN2237">2237</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2238"><td class="num" id="LN2238">2238</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2239"><td class="num" id="LN2239">2239</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2240"><td class="num" id="LN2240">2240</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2241"><td class="num" id="LN2241">2241</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2242"><td class="num" id="LN2242">2242</td><td class="line"> r = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2243"><td class="num" id="LN2243">2243</td><td class="line"> g = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2244"><td class="num" id="LN2244">2244</td><td class="line"> b = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2245"><td class="num" id="LN2245">2245</td><td class="line"> a = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2246"><td class="num" id="LN2246">2246</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2247"><td class="num" id="LN2247">2247</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2248"><td class="num" id="LN2248">2248</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2249"><td class="num" id="LN2249">2249</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2250"><td class="num" id="LN2250">2250</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2251"><td class="num" id="LN2251">2251</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2252"><td class="num" id="LN2252">2252</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2253"><td class="num" id="LN2253">2253</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2254"><td class="num" id="LN2254">2254</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2255"><td class="num" id="LN2255">2255</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2256"><td class="num" id="LN2256">2256</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2257"><td class="num" id="LN2257">2257</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2258"><td class="num" id="LN2258">2258</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2259"><td class="num" id="LN2259">2259</td><td class="line"> r += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2260"><td class="num" id="LN2260">2260</td><td class="line"> g += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2261"><td class="num" id="LN2261">2261</td><td class="line"> b += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2262"><td class="num" id="LN2262">2262</td><td class="line"> a += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2263"><td class="num" id="LN2263">2263</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2264"><td class="num" id="LN2264">2264</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2265"><td class="num" id="LN2265">2265</td><td class="line"> <span class='keyword'>if</span> (<span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2266"><td class="num" id="LN2266">2266</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2267"><td class="num" id="LN2267">2267</td><td class="line"> pix = ypoints[dyy + y] + xpoints[x] + sow;</td></tr>
<tr class="codeline" data-linenumber="2268"><td class="num" id="LN2268">2268</td><td class="line"> rr = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2269"><td class="num" id="LN2269">2269</td><td class="line"> gg = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2270"><td class="num" id="LN2270">2270</td><td class="line"> bb = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2271"><td class="num" id="LN2271">2271</td><td class="line"> aa = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2272"><td class="num" id="LN2272">2272</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2273"><td class="num" id="LN2273">2273</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - xap; j &gt; Cx; j -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2274"><td class="num" id="LN2274">2274</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2275"><td class="num" id="LN2275">2275</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2276"><td class="num" id="LN2276">2276</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2277"><td class="num" id="LN2277">2277</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2278"><td class="num" id="LN2278">2278</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2279"><td class="num" id="LN2279">2279</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2280"><td class="num" id="LN2280">2280</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2281"><td class="num" id="LN2281">2281</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2282"><td class="num" id="LN2282">2282</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2283"><td class="num" id="LN2283">2283</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2284"><td class="num" id="LN2284">2284</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2285"><td class="num" id="LN2285">2285</td><td class="line"> rr += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2286"><td class="num" id="LN2286">2286</td><td class="line"> gg += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2287"><td class="num" id="LN2287">2287</td><td class="line"> bb += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2288"><td class="num" id="LN2288">2288</td><td class="line"> aa += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * j) &gt;&gt; 10;</td></tr>
<tr class="codeline" data-linenumber="2289"><td class="num" id="LN2289">2289</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2290"><td class="num" id="LN2290">2290</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2291"><td class="num" id="LN2291">2291</td><td class="line"> r = r * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2292"><td class="num" id="LN2292">2292</td><td class="line"> g = g * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2293"><td class="num" id="LN2293">2293</td><td class="line"> b = b * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2294"><td class="num" id="LN2294">2294</td><td class="line"> a = a * <span class='macro'>INV_YAP<span class='expansion'>(256 - yapoints[dyy + y])</span></span>;</td></tr>
<tr class="codeline" data-linenumber="2295"><td class="num" id="LN2295">2295</td><td class="line"> r = (r + ((rr * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2296"><td class="num" id="LN2296">2296</td><td class="line"> g = (g + ((gg * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2297"><td class="num" id="LN2297">2297</td><td class="line"> b = (b + ((bb * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2298"><td class="num" id="LN2298">2298</td><td class="line"> a = (a + ((aa * <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span>))) &gt;&gt; 12;</td></tr>
<tr class="codeline" data-linenumber="2299"><td class="num" id="LN2299">2299</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2300"><td class="num" id="LN2300">2300</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2301"><td class="num" id="LN2301">2301</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2302"><td class="num" id="LN2302">2302</td><td class="line"> r &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2303"><td class="num" id="LN2303">2303</td><td class="line"> g &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2304"><td class="num" id="LN2304">2304</td><td class="line"> b &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2305"><td class="num" id="LN2305">2305</td><td class="line"> a &gt;&gt;= 4;</td></tr>
<tr class="codeline" data-linenumber="2306"><td class="num" id="LN2306">2306</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2307"><td class="num" id="LN2307">2307</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2308"><td class="num" id="LN2308">2308</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r;</td></tr>
<tr class="codeline" data-linenumber="2309"><td class="num" id="LN2309">2309</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g;</td></tr>
<tr class="codeline" data-linenumber="2310"><td class="num" id="LN2310">2310</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b;</td></tr>
<tr class="codeline" data-linenumber="2311"><td class="num" id="LN2311">2311</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a;</td></tr>
<tr class="codeline" data-linenumber="2312"><td class="num" id="LN2312">2312</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2313"><td class="num" id="LN2313">2313</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2314"><td class="num" id="LN2314">2314</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2315"><td class="num" id="LN2315">2315</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2316"><td class="num" id="LN2316">2316</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2317"><td class="num" id="LN2317">2317</td><td class="line"> <span class='comment'>/* if we're scaling down horizontally &amp; vertically */</span></td></tr>
<tr class="codeline" data-linenumber="2318"><td class="num" id="LN2318">2318</td><td class="line"> <span class='keyword'>else</span></td></tr>
<tr class="codeline" data-linenumber="2319"><td class="num" id="LN2319">2319</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2320"><td class="num" id="LN2320">2320</td><td class="line"> <span class='comment'>/*\ 'Correct' version, with math units prepared for MMXification:</span></td></tr>
<tr class="codeline" data-linenumber="2321"><td class="num" id="LN2321">2321</td><td class="line"> <span class='comment'>|*| The operation 'b = (b * c) &gt;&gt; 16' translates to pmulhw,</span></td></tr>
<tr class="codeline" data-linenumber="2322"><td class="num" id="LN2322">2322</td><td class="line"> <span class='comment'>|*| so the operation 'b = (b * c) &gt;&gt; d' would translate to</span></td></tr>
<tr class="codeline" data-linenumber="2323"><td class="num" id="LN2323">2323</td><td class="line"> <span class='comment'>|*| psllw (16 - d), %mmb; pmulh %mmc, %mmb</span></td></tr>
<tr class="codeline" data-linenumber="2324"><td class="num" id="LN2324">2324</td><td class="line"> <span class='comment'>\*/</span></td></tr>
<tr class="codeline" data-linenumber="2325"><td class="num" id="LN2325">2325</td><td class="line"> <span class='keyword'>int</span> Cx, Cy, i, j;</td></tr>
<tr class="codeline" data-linenumber="2326"><td class="num" id="LN2326">2326</td><td class="line"> ullong* pix=<span class='keyword'>nullptr</span>;</td></tr>
<tr class="codeline" data-linenumber="2327"><td class="num" id="LN2327">2327</td><td class="line"> llong a, r, g, b, ax, rx, gx, bx;</td></tr>
<tr class="codeline" data-linenumber="2328"><td class="num" id="LN2328">2328</td><td class="line"> <span class='keyword'>int</span> xap, yap;</td></tr>
<tr class="codeline" data-linenumber="2329"><td class="num" id="LN2329">2329</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2330"><td class="num" id="LN2330">2330</td><td class="line"> <span class='keyword'>for</span> (y = y_begin; y &lt; y_end; ++y)</td></tr>
<tr class="codeline" data-linenumber="2331"><td class="num" id="LN2331">2331</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2332"><td class="num" id="LN2332">2332</td><td class="line"> Cy = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2333"><td class="num" id="LN2333">2333</td><td class="line"> yap = <span class='macro'>YAP<span class='expansion'>(yapoints[dyy + y])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2334"><td class="num" id="LN2334">2334</td><td class="line"> dptr = dest + (y - y_begin) * dow;</td></tr>
<tr class="codeline" data-linenumber="2335"><td class="num" id="LN2335">2335</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2336"><td class="num" id="LN2336">2336</td><td class="line"> <span class='keyword'>for</span> (x = x_begin; x &lt; x_end; ++x)</td></tr>
<tr class="codeline" data-linenumber="2337"><td class="num" id="LN2337">2337</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2338"><td class="num" id="LN2338">2338</td><td class="line"> Cx = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &gt;&gt; 16;</td></tr>
<tr class="codeline" data-linenumber="2339"><td class="num" id="LN2339">2339</td><td class="line"> xap = <span class='macro'>XAP<span class='expansion'>(xapoints[x])</span></span> &amp; 0xffff;</td></tr>
<tr class="codeline" data-linenumber="2340"><td class="num" id="LN2340">2340</td><td class="line"> sptr = ypoints[dyy + y] + xpoints[x];</td></tr>
<tr class="codeline" data-linenumber="2341"><td class="num" id="LN2341">2341</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2342"><td class="num" id="LN2342">2342</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2343"><td class="num" id="LN2343">2343</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2344"><td class="num" id="LN2344">2344</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2345"><td class="num" id="LN2345">2345</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2346"><td class="num" id="LN2346">2346</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2347"><td class="num" id="LN2347">2347</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2348"><td class="num" id="LN2348">2348</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2349"><td class="num" id="LN2349">2349</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2350"><td class="num" id="LN2350">2350</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2351"><td class="num" id="LN2351">2351</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2352"><td class="num" id="LN2352">2352</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2353"><td class="num" id="LN2353">2353</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2354"><td class="num" id="LN2354">2354</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2355"><td class="num" id="LN2355">2355</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2356"><td class="num" id="LN2356">2356</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2357"><td class="num" id="LN2357">2357</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2358"><td class="num" id="LN2358">2358</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2359"><td class="num" id="LN2359">2359</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2360"><td class="num" id="LN2360">2360</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2361"><td class="num" id="LN2361">2361</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2362"><td class="num" id="LN2362">2362</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2363"><td class="num" id="LN2363">2363</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2364"><td class="num" id="LN2364">2364</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2365"><td class="num" id="LN2365">2365</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2366"><td class="num" id="LN2366">2366</td><td class="line"> r = (rx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2367"><td class="num" id="LN2367">2367</td><td class="line"> g = (gx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2368"><td class="num" id="LN2368">2368</td><td class="line"> b = (bx * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2369"><td class="num" id="LN2369">2369</td><td class="line"> a = (ax * yap) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2370"><td class="num" id="LN2370">2370</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2371"><td class="num" id="LN2371">2371</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2372"><td class="num" id="LN2372">2372</td><td class="line"> <span class='keyword'>for</span> (j = (1 &lt;&lt; 14) - yap; j &gt; Cy; j -= Cy)</td></tr>
<tr class="codeline" data-linenumber="2373"><td class="num" id="LN2373">2373</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2374"><td class="num" id="LN2374">2374</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2375"><td class="num" id="LN2375">2375</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2376"><td class="num" id="LN2376">2376</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2377"><td class="num" id="LN2377">2377</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2378"><td class="num" id="LN2378">2378</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2379"><td class="num" id="LN2379">2379</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2380"><td class="num" id="LN2380">2380</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2381"><td class="num" id="LN2381">2381</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2382"><td class="num" id="LN2382">2382</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2383"><td class="num" id="LN2383">2383</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2384"><td class="num" id="LN2384">2384</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2385"><td class="num" id="LN2385">2385</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2386"><td class="num" id="LN2386">2386</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2387"><td class="num" id="LN2387">2387</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2388"><td class="num" id="LN2388">2388</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2389"><td class="num" id="LN2389">2389</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2390"><td class="num" id="LN2390">2390</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2391"><td class="num" id="LN2391">2391</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2392"><td class="num" id="LN2392">2392</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2393"><td class="num" id="LN2393">2393</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2394"><td class="num" id="LN2394">2394</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2395"><td class="num" id="LN2395">2395</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2396"><td class="num" id="LN2396">2396</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2397"><td class="num" id="LN2397">2397</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2398"><td class="num" id="LN2398">2398</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2399"><td class="num" id="LN2399">2399</td><td class="line"> r += (rx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2400"><td class="num" id="LN2400">2400</td><td class="line"> g += (gx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2401"><td class="num" id="LN2401">2401</td><td class="line"> b += (bx * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2402"><td class="num" id="LN2402">2402</td><td class="line"> a += (ax * Cy) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2403"><td class="num" id="LN2403">2403</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2404"><td class="num" id="LN2404">2404</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2405"><td class="num" id="LN2405">2405</td><td class="line"> <span class='keyword'>if</span> (j &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2406"><td class="num" id="LN2406">2406</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2407"><td class="num" id="LN2407">2407</td><td class="line"> pix = sptr;</td></tr>
<tr class="codeline" data-linenumber="2408"><td class="num" id="LN2408">2408</td><td class="line"> sptr += sow;</td></tr>
<tr class="codeline" data-linenumber="2409"><td class="num" id="LN2409">2409</td><td class="line"> (<span class='keyword'>void</span>)sptr; <span class='comment'>// disable clang warning.</span></td></tr>
<tr class="codeline" data-linenumber="2410"><td class="num" id="LN2410">2410</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2411"><td class="num" id="LN2411">2411</td><td class="line"> rx = (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2412"><td class="num" id="LN2412">2412</td><td class="line"> gx = (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2413"><td class="num" id="LN2413">2413</td><td class="line"> bx = (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2414"><td class="num" id="LN2414">2414</td><td class="line"> ax = (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * xap) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2415"><td class="num" id="LN2415">2415</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2416"><td class="num" id="LN2416">2416</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2417"><td class="num" id="LN2417">2417</td><td class="line"> <span class='keyword'>for</span> (i = (1 &lt;&lt; 14) - xap; i &gt; Cx; i -= Cx)</td></tr>
<tr class="codeline" data-linenumber="2418"><td class="num" id="LN2418">2418</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2419"><td class="num" id="LN2419">2419</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2420"><td class="num" id="LN2420">2420</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2421"><td class="num" id="LN2421">2421</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2422"><td class="num" id="LN2422">2422</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * Cx) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2423"><td class="num" id="LN2423">2423</td><td class="line"> ++pix;</td></tr>
<tr class="codeline" data-linenumber="2424"><td class="num" id="LN2424">2424</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2425"><td class="num" id="LN2425">2425</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2426"><td class="num" id="LN2426">2426</td><td class="line"> <span class='keyword'>if</span> (i &gt; 0)</td></tr>
<tr class="codeline" data-linenumber="2427"><td class="num" id="LN2427">2427</td><td class="line"> {</td></tr>
<tr class="codeline" data-linenumber="2428"><td class="num" id="LN2428">2428</td><td class="line"> rx += (<span class='macro'>R_VAL16(pix)<span class='expansion'>((ushort*)(pix))[2]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2429"><td class="num" id="LN2429">2429</td><td class="line"> gx += (<span class='macro'>G_VAL16(pix)<span class='expansion'>((ushort*)(pix))[1]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2430"><td class="num" id="LN2430">2430</td><td class="line"> bx += (<span class='macro'>B_VAL16(pix)<span class='expansion'>((ushort*)(pix))[0]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2431"><td class="num" id="LN2431">2431</td><td class="line"> ax += (<span class='macro'>A_VAL16(pix)<span class='expansion'>((ushort*)(pix))[3]</span></span> * i) &gt;&gt; 9;</td></tr>
<tr class="codeline" data-linenumber="2432"><td class="num" id="LN2432">2432</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2433"><td class="num" id="LN2433">2433</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2434"><td class="num" id="LN2434">2434</td><td class="line"> r += (rx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2435"><td class="num" id="LN2435">2435</td><td class="line"> g += (gx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2436"><td class="num" id="LN2436">2436</td><td class="line"> b += (bx * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2437"><td class="num" id="LN2437">2437</td><td class="line"> a += (ax * j) &gt;&gt; 14;</td></tr>
<tr class="codeline" data-linenumber="2438"><td class="num" id="LN2438">2438</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2439"><td class="num" id="LN2439">2439</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2440"><td class="num" id="LN2440">2440</td><td class="line"> <span class='macro'>R_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[2]</span></span> = r &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2441"><td class="num" id="LN2441">2441</td><td class="line"> <span class='macro'>G_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[1]</span></span> = g &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2442"><td class="num" id="LN2442">2442</td><td class="line"> <span class='macro'>B_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[0]</span></span> = b &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2443"><td class="num" id="LN2443">2443</td><td class="line"> <span class='macro'>A_VAL16(dptr)<span class='expansion'>((ushort*)(dptr))[3]</span></span> = a &gt;&gt; 5;</td></tr>
<tr class="codeline" data-linenumber="2444"><td class="num" id="LN2444">2444</td><td class="line"> ++dptr;</td></tr>
<tr class="codeline" data-linenumber="2445"><td class="num" id="LN2445">2445</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2446"><td class="num" id="LN2446">2446</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2447"><td class="num" id="LN2447">2447</td><td class="line"> }</td></tr>
<tr class="codeline" data-linenumber="2448"><td class="num" id="LN2448">2448</td><td class="line">}</td></tr>
<tr class="codeline" data-linenumber="2449"><td class="num" id="LN2449">2449</td><td class="line"> </td></tr>
<tr class="codeline" data-linenumber="2450"><td class="num" id="LN2450">2450</td><td class="line">} <span class='comment'>// namespace Digikam</span></td></tr>
</table></body></html>